Submission #1270942

#TimeUsernameProblemLanguageResultExecution timeMemory
1270942AlgorithmWarriorPacking Biscuits (IOI20_biscuits)C++20
0 / 100
2 ms324 KiB
#include "biscuits.h" #include <bits/stdc++.h> using namespace std; long long dp[65]; long long const INF=2e18; long long count_tastiness(long long x,vector<long long>a){ int i; int nrb=a.size(); dp[nrb]=1; for(i=nrb-1;i>=0;--i){ dp[i]=0; int j; for(j=i+1;j<=nrb;++j){ int k; long long scazut=0; long long lb=0,ub; for(k=j-1;k>i;--k){ scazut+=a[k]*(1LL<<k); long long lbtemp=scazut/x/(1LL<<k)+1; if(INF/lbtemp>(1LL<<(k-i))) lbtemp*=(1LL<<(k-i)); else lbtemp=INF; if(lb<lbtemp) lb=lbtemp; } scazut+=a[i]*(1LL<<i); ub=min(scazut/x/(1LL<<i),(1LL<<(j-i))-1); if(lb<=ub) dp[i]+=dp[j]*(ub-lb+1); } } return dp[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...