Submission #314895

#TimeUsernameProblemLanguageResultExecution timeMemory
314895kostia244Packing Biscuits (IOI20_biscuits)C++17
21 / 100
1105 ms70264 KiB
#include "biscuits.h" #include<bits/stdc++.h> #define all(x) begin(x), end(x) using namespace std; using ll = long long; const int B = 126, C = 10005; ll count_tastiness(ll x, vector<ll> a) { map<ll, ll> dp[B+1]; a.resize(B); for(int i = 0; i+1 < B; i++) { ll t = max(0ll, a[i]-x); t -= t&1; a[i] -= t; a[i+1] += t/2; } dp[0][0] = 1; for(int i = 0; i < B; i++) for(auto [r, val] : dp[i]) { dp[i+1][(a[i]+r)/2] += val; if(a[i]+r >= x) dp[i+1][(a[i]+r-x)/2] += val; } return dp[B][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...