제출 #1320718

#제출 시각아이디문제언어결과실행 시간메모리
1320718alinurKitchen (BOI19_kitchen)C++20
0 / 100
1 ms332 KiB
#include <bits/stdc++.h> // freopen #define open freopen("stdin.txt", "r", stdin); freopen("stdout.txt", "w", stdout); // int, double, string, char #define ll long long #define ull unsigned long long #define ld long double #define db double #define str string // double 2.0 #define cl ceil #define rd round #define tr trunc #define fl floor // cin, cout #define co cout << #define ci cin >> #define YES cout << "YES" #define NO cout << "NO" #define yes cout << "yes" #define no cout << "no" #define Yes cout << "Yes" #define No cout << "No" #define en << endl #define fix(x) fixed << setprecision(x) #define stp(x) setprecision(x) // vector #define vll vector <ll> #define vld vector <ld> #define vs vector <str> #define vc vector <char> // pair #define plll pair<ll, ll> #define plld pair<ll, ld> #define plls pair<ll, str> #define pllc pair<ll, char> #define pldl pair<ld, ll> #define pldd pair<ld, ld> #define plds pair<ld, str> #define pldc pair<ld, char> #define psll pair<str, ll> #define psld pair<str, ld> #define pss pair<str, str> #define psc pair<str, char> #define pcll pair<char, ll> #define pcld pair<char, ld> #define pcs pair<char, str> #define pcc pair<char, char> // vector<pair> #define vplll vector<pair<ll, ll> > #define vplld vector<pair<ll, ld> > #define vplls vector<pair<ll, str> > #define vpllc vector<pair<ll, char> > #define vpldl vector<pair<ld, ll> > #define vpldd vector<pair<ld, ld> > #define vplds vector<pair<ld, str> > #define vpldc vector<pair<ld, char> > #define vpsll vector<pair<str, ll> > #define vpsld vector<pair<str, ld> > #define vpss vector<pair<str, str> > #define vpsc vector<pair<str, char> > #define vpcll vector<pair<char, ll> > #define vpcld vector<pair<char, ld> > #define vpcs vector<pair<char, str> > #define vpcc vector<pair<char, char> > // set #define stll set <ll> #define stld set <ld> #define sts set <str> #define stc set <char> // multiset #define mstll multiset <ll> #define mstld multiset <ld> #define msts multiset <str> #define mstc multiset <char> // set pair #define stplll set<pair<ll, ll> > #define stplld set<pair<ll, ld> > #define stplls set<pair<ll, str> > #define stpllc set<pair<ll, char> > #define stpldl set<pair<ld, ll> > #define stpldd set<pair<ld, ld> > #define stplds set<pair<ld, str> > #define stpldc set<pair<ld, char> > #define stpsll set<pair<str, ll> > #define stpsld set<pair<str, ld> > #define stpss set<pair<str, str> > #define stpsc set<pair<str, char> > #define stpcll set<pair<char, ll> > #define stpcld set<pair<char, ld> > #define stpcs set<pair<char, str> > #define stpcc set<pair<char, char> > // multiset pair #define mstplll multiset<pair<ll, ll> > #define mstplld multiset<pair<ll, ld> > #define mstplls multiset<pair<ll, str> > #define mstpllc multiset<pair<ll, char> > #define mstpldl multiset<pair<ld, ll> > #define mstpldd multiset<pair<ld, ld> > #define mstplds multiset<pair<ld, str> > #define mstpldc multiset<pair<ld, char> > #define mstpsll multiset<pair<str, ll> > #define mstpsld multiset<pair<str, ld> > #define mstpss multiset<pair<str, str> > #define mstpsc multiset<pair<str, char> > #define mstpcll multiset<pair<char, ll> > #define mstpcld multiset<pair<char, ld> > #define mstpcs multiset<pair<char, str> > #define mstpcc multiset<pair<char, char> > // map #define mll map<ll, ll> #define mld map<ll, ld> #define mls map<ll, str> #define mlc map<ll, char> #define mdl map<ld, ll> #define mdd map<ld, ld> #define mds map<ld, str> #define mdc map<ld, char> #define msl map<str, ll> #define msd map<str, ld> #define mss map<str, str> #define msc map<str, char> #define mcl map<char, ll> #define mcd map<char, ld> #define mcs map<char, str> #define mcc map<char, char> // const #define cll const ll #define cull const ull #define cld const ld #define cc const char #define cs const str // prosta 1 #define to_str to_string #define stl stoll #define pb push_back #define pp pop_back #define sz size() #define cr clear() #define rvs reverse #define ins insert #define all(x) x.begin(), x.end() #define rall(x) x.rbegin(), x.rend() #define all1(x) x.begin() + 1, x.end() + 1 #define allx(x, n, k) x + k, x + n + k #define F first #define S second #define mp make_pair // prosta 2 #define nxt_per next_permutation #define prev_per prev_permutation #define use using namespace std // for #define fori(i, y, n, x) for (ll i = y; i <= n; i += x) #define brk break #define con continue #define rt return #define rt0 return 0 // faster #define sho_tam ios_base::sync_with_stdio(false); cin.tie(nullptr); use; cll N_min = 1e3 + 6; cll N = 1e5 + 1; cll NN = 4e5 + 3; cll N_max = 1e6 + 1; cll NNN = 1e8; cll mod = 1e9 + 7; cll inf = 1e18; cld pi1 = 3.14159; cld pi = 3.14159265358979323846264338327950288419716939937510582097494459230781640628620899862803482534211706798214808651328230664709384460955058223172535940812848111745028410270193852110555964462294895493038196442881097566593344612847564823378678316527120190914564856692346034861045432664821339360726024914127372458700660631558817488152092096282925409171536436789259036001133053054882046652138414695194151160943305727036575959195309218611738193261179310511854807446237996274956735188575272489122793818301194912983367336244065664308602139494639522473719070217986094370277053921717629317675238467481846766940513200056812714526356082778577134275778960917363717872146844090122495343014654958537105079227968925892354201995611212902196086403441815981362977477130996051870721134999999837297804995105973173281609631859502445945534690830264252230825334468503526193118817101000313783875288658753320838142061717766914730359825349042875546873115956286388235378759375195778185778053217122680661300192787661119590921642019893809525720106548586327886593615338182796823030195203530185296899577362259941389124972177528347913151557485724245415069595082; ll prime[N_max]; void primes() { prime[0] = prime[1] = 1; for (ll i = 2; i < N_max; i++) if (prime[i] == 0) for (ll j = i + i; j < N_max; j += i) prime[j] = 1; } ll fct[N_max]; void fact() { fct[0] = 1; for (ll i = 1; i < N_max; i++) fct[i] = (fct[i - 1] * i) % mod; } ull binpow(ull a, ull b) { if (b == 0) rt 1; ull o = binpow(a, b / 2); o *= o; o %= mod; if (b % 2 == 1) o *= a; o %= mod; rt o; } void vvv() { ll n, m, k; ci n >> m >> k; ll a[n + 1], b[m + 1], c[m + 1], aa[n + 1]; for (ll i = 1; i <= n; i++) ci a[i], aa[i] = a[i]; for (ll j = 1; j <= m; j++) ci b[j]; sort(allx(b, m, 1)); for (ll j = 1; j <= m; j++) c[j] = b[j]; if (m < k) { co "R"; rt; } for (ll i = 1; i <= n; i++) { if (m == 1) { if (b[1] < a[i]) { co "R"; rt; } b[1] -= a[i]; a[i] = 0; } else { if (k == 2) { if (b[1] > b[2]) swap(b[1], b[2]); if (b[1] == 0) { co "R"; rt; } ll x = b[1] + b[2]; if (x - 1 < a[i]) { co "R"; rt; } if (b[1] <= a[i]) a[i] -= b[1] - 1, b[1] = 1; else b[1] -= a[i], a[i] = 0; if (b[2] <= a[i]) a[i] -= b[2], b[2] = 0; else b[2] -= a[i], a[i] = 0; if (a[i] != 0) { co "R"; rt; } } else { ll x = b[1] + b[2]; if (x < a[i]) { co "R"; rt; } if (b[1] <= a[i]) a[i] -= b[1], b[1] = 0; else b[1] -= a[i], a[i] = 0; if (b[2] <= a[i]) a[i] -= b[2], b[2] = 0; else b[2] -= a[i], a[i] = 0; if (a[i] != 0) { co "R"; rt; } } } } ll mn; if (k == 2) mn = b[1] + b[2]; else { if (m == 1) mn = b[1]; else { if (b[1] == 0) { if (b[2] == c[2]) mn = 0; else mn = b[2]; } else mn = b[1]; } } if (k == 1 and m != 1) { b[1] = c[1], b[2] = c[2]; for (ll i = 1; i <= n; i++) { a[i] = aa[i]; if (b[2] <= a[i]) a[i] -= b[2], b[2] = 0; else b[2] -= a[i], a[i] = 0; if (b[1] <= a[i]) a[i] -= b[1], b[1] = 0; else b[1] -= a[i], a[i] = 0; } if (b[2] == 0) { if (b[1] == c[1]) mn = 0; else mn = min(mn, b[1]); } else mn = min(mn, b[2]); co mn; } else co mn; } int main() { // open; sho_tam ll KKK = 1; // ci KKK; // fact(); // primes(); for (int ooo = 1; ooo <= KKK; ooo++) vvv(); rt0; } /* CHAR_MIN : -128 CHAR_MAX : 127 SHRT_MIN : -32768 SHRT_MAX : 32767 USHRT_MAX : 65535 INT_MIN : -2147483648 INT_MAX : 2147483647 UINT_MAX : 4294967295 LONG_MIN : -9223372036854775808 LONG_MAX : 9223372036854775807 ULONG_MAX : 18446744073709551615 LLONG_MIN : -9223372036854775808 LLONG_MAX : 9223372036854775807 ULLONG_MAX : 18446744073709551615 */ /* | ________ ____________________________ ____________________________ | / \ | | | / | | / \ | | | / | | / \ | | | / | | / \ | | | / | | / \ | | | / | | / \ | | | / | | / \ | | | / | | / \ | | | / | | / \ | | | / | | / \ | | | /\ | | /____________________________\ | |–––––––––––––––––––––––– | / \ |–––––––––––––––––––––––– | /——————————————————————————————\ | | |/ \ | | / \ | | | \ | | / \ | | | \ | | / \ | | | \ | | / \ | | | \ | | / \ | | | \ | | / \ | | | \ | | / \ | | | \ | | / \ | | | \ | | / \ |_____________________________ |___________________________ | \ |___________________________ */
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...