Submission #315666

#TimeUsernameProblemLanguageResultExecution timeMemory
315666SortingPacking Biscuits (IOI20_biscuits)C++17
0 / 100
1093 ms416 KiB
#include "biscuits.h" #include <bits/stdc++.h> using namespace std; typedef long long ll; ll x, k; vector<ll> a; map<pair<int, ll>, ll> dp; ll solve(int idx, ll add){ //cout << "solve " << idx << " " << add << endl; if(idx == k) return add + 1; //if(dp.count({idx, add})) return dp[{idx, add}]; ll &ans = dp[{idx, add}]; ll sum = a[idx] + add; if(!sum) ans = solve(idx + 1, 0); else if(sum & 1) ans = solve(idx + 1, sum >> 1) * 2; else ans = solve(idx + 1, sum >> 1) + solve(idx + 1, (sum - 1) >> 1); return ans; } ll count_tastiness(ll _x, vector<ll> _a){ x = _x, a = _a; k = a.size(); return solve(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...