Submission #341644

#TimeUsernameProblemLanguageResultExecution timeMemory
341644keko37Packing Biscuits (IOI20_biscuits)C++14
21 / 100
1094 ms33588 KiB
#include <bits/stdc++.h> #include "biscuits.h" using namespace std; typedef long long llint; const int MAXN = 70; const llint B = 31337; llint x; llint a[MAXN], dp[MAXN], pref[MAXN]; unordered_map <llint, llint> mp; llint calc (int pos, llint ost) { if (pos == 65) return 1; llint h = pos * B + ost; if (mp.find(h) != mp.end()) return mp[h]; llint res = calc(pos + 1, (ost + a[pos]) / 2); if (ost + a[pos] >= x) { res += calc(pos + 1, (ost + a[pos] - x) / 2); } return mp[h] = res; } llint count_tastiness (llint X, vector <llint> A) { x = X; for (int i = 0; i <= 65; i++) a[i] = 0; for (int i = 0; i < (int)A.size(); i++) a[i] = A[i]; mp.clear(); return calc(0, 0); }
#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...