제출 #1240499

#제출 시각아이디문제언어결과실행 시간메모리
1240499Muhammad_AneeqPacking Biscuits (IOI20_biscuits)C++20
12 / 100
1096 ms412 KiB
#include "biscuits.h" #include <vector> #include <iostream> using namespace std; #define ll long long int const N=61; ll tot[N]={}; ll org[N]={}; ll sol(ll j,ll sb) { if (j<0) return 1; ll tsb=sb; ll z=min(org[j],sb); sb-=z; if (sb>tot[j]) return 1; if ((1ll<<j)<tot[j]-sb) return sol(j-1,tsb+sb)+(1ll<<(j)); return sol(j-1,tsb); } long long count_tastiness(long long x, vector<long long> a) { if (x==1) { int n=a.size(); ll ans=1; ll cur=0; for (int i=n-1;i>=0;i--) { if (a[i]==0) { ans=(ans*(cur+1)); cur=0; } else { cur=cur*2+a[i]; } } ans=(ans*(cur+1)); return ans; } int ans=0; int n=a.size(); for (int i=0;i*x<=1e5+10;i++) { vector<ll>b=a; bool w=1; for (int j=0;j<x;j++) { int z=i; for (int k=n-1;k>=0;k--) { int g=min(b[k],z/(1ll<<k)); b[k]-=g; z-=(g<<k); } if (z>0) { w=0; break; } } ans+=w; } 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...