Submission #720582

#TimeUsernameProblemLanguageResultExecution timeMemory
720582bin9638Packing Biscuits (IOI20_biscuits)C++17
21 / 100
1087 ms63396 KiB
#include <bits/stdc++.h> #ifndef SKY #include "biscuits.h" #endif // SKY using namespace std; #define N 1010 #define ll long long #define fs first #define sc second #define ii pair<int,int> #define pb push_back const int num_bit=60; int n; vector<ll>a; map<ll,ll>mp[N]; ll m; ll get(ll sl,int pos) { if(pos==num_bit) return 1; if(mp[pos].find(sl)!=mp[pos].end()) return mp[pos][sl]; ll res=get((sl+a[pos])/2,pos+1); if(sl+a[pos]>=m) res+=get((sl+a[pos]-m)/2,pos+1); return(mp[pos][sl]=res); } ll count_tastiness(ll cc, vector<ll> vec) { n=vec.size(); a=vec; m=cc; while(n<60) a.pb(0),n++; for(int i=0;i<num_bit;i++) mp[i].clear(); return get(0,0); } #ifdef SKY int main() { freopen("A.inp","r",stdin); freopen("A.out","w",stdout); ios::sync_with_stdio(0); cin.tie(NULL); cout.tie(NULL); ll x,k; cin>>x>>k; vector<ll>a(k); for(int i=0;i<k;i++) cin>>a[i]; cout<<count_tastiness(x,a); return 0; } #endif
#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...