Submission #1235058

#TimeUsernameProblemLanguageResultExecution timeMemory
1235058stanirinaPacking Biscuits (IOI20_biscuits)C++20
0 / 100
1094 ms484 KiB
#include "biscuits.h" #include<bits/stdc++.h> #define int long long using namespace std; long long count_tastiness(long long x, vector<long long> a) { int n=0ll; int ans=0ll; int k=a.size(); vector<int> potrebno(k+1,0ll); for(int i=0ll;i<k;i++)n+=a[i]*(1ll<<i); for(int i=0ll;i<n/x+2ll;i++){ for(int j=k;j>=0;j--){ if(i&(1ll<<j))potrebno[j]=x; else potrebno[j]=0ll; } bool ok=true; if(potrebno[k]==x)potrebno[k-1ll]+=2ll*x; for(int j=k-1ll;j>0ll;j--){ if(potrebno[j]<0ll || potrebno[j]>1000000000000000004ll){ ok=false; break; } potrebno[j-1ll]+=2ll*max(0ll,potrebno[j]-a[j]); if(potrebno[j-1ll]<0ll || potrebno[j-1]>1000000000000000004ll){ ok=false; break; } } if(!ok)continue; //for(int j=0;j<k+1;j++)cout<<potrebno[j]<<' '; //cout<<endl; //cout<<i<<endl; if(potrebno[0ll]<=a[0ll]){ans++;//cout<<i<<endl; } } return ans; }
#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...