제출 #1280940

#제출 시각아이디문제언어결과실행 시간메모리
1280940LaMatematica14비스킷 담기 (IOI20_biscuits)C++20
0 / 100
10 ms572 KiB
#include "biscuits.h" #include <bits/stdc++.h> using namespace std; long long count_tastiness(long long x, vector<long long> a) { int k = 62; vector<long long> ep(62); long long sum = 0; for (long long i = 0; i < k; i++) { if (i < a.size()) sum += a[i]*(1LL<<i); ep[i] = min((1LL<<(i+1))-1, sum/x); } map<pair<long long, int>, long long> m; function<long long(long long, int)> ric = [&](long long point, int lev) { if (lev == 1) { return point+1; } if (m.count({point, lev})) return m[{point, lev}]; long long agg = 0; long long mprev = (1LL<<(lev-1))-1; if (point >= mprev) agg += ric(mprev, lev-1); long long nex = min(point, ep[lev-1]); // check agg += ric(nex&mprev, lev-1); m.insert({{point, lev}, agg}); return agg; }; return ric((1<<k)-1, k); }
#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...