Submission #1141633

#TimeUsernameProblemLanguageResultExecution timeMemory
1141633mnbvcxz123Packing Biscuits (IOI20_biscuits)C++20
100 / 100
65 ms840 KiB
#include"biscuits.h" #include<bits/stdc++.h> using namespace std; using ll=long long; ll n; map<ll,ll>dp; ll s[63]; ll f(ll x){ if(x<=0)return 0; if(x==1)return 1; if(dp.count(x))return dp[x]; int k=log2l(x-1); dp[x]=f(1ll<<k)+f(min(x,s[k]/n+1)-(1ll<<k)); return dp[x]; } ll count_tastiness(ll x, vector<ll>a){ dp.clear(); n=x; while(a.size()<63)a.push_back(0); for(int i=0;i<63;++i) s[i]=(!i?0:s[i-1])+a[i]*(1ll<<i); return f(s[62]+1); }
#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...