Submission #1225971

#TimeUsernameProblemLanguageResultExecution timeMemory
1225971PVM_pvm비스킷 담기 (IOI20_biscuits)C++20
0 / 100
1 ms328 KiB
#include "biscuits.h" #include<bits/stdc++.h> using namespace std; #define MAXK 60 unordered_map<long long, long long> un[MAXK]; long long xx; vector<long long> ms; long long f(int bit, long long klk) { if (bit==ms.size()-1) { if (klk>=xx) return 2; return 1; } auto tyrs=un[bit].find(klk); if (tyrs!=un[bit].end()) return tyrs->second; if (klk<xx) { long long cur=f(bit+1,ms[bit+1]+(klk/2)); un[bit][klk]=cur; return cur; } long long cur=f(bit+1,ms[bit+1]+(klk/2))+f(bit+1,ms[bit+1]+((klk-xx)/2)); un[bit][klk]=cur; //cout<<bit<<" "<<klk<<" "<<cur<<"\n"; return cur; } long long count_tastiness(long long x, vector<long long> a) { ms=a; xx=x; for (int q=0;q<MAXK;q++) un[q].clear(); return f(0,a[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...