Submission #13903

#TimeUsernameProblemLanguageResultExecution timeMemory
13903minsu올림픽 피자 (tutorial5)C++14
0 / 100
84 ms1728 KiB
#include "pizza.h" #include <queue> #include <algorithm> using namespace std; const int INF=987654321; queue<int> pizza[1<<8]; int on=0,cnt[8]; void Init(){ } void chk(){ int avpiz=0, minnum=INF, minq; for(int i=0;i<7;i++) if(cnt[i]) avpiz|=1<<i; for(int i=0;i<1<<7;i++){ if(i - (i & avpiz) == 0 && !pizza[i].empty()){ if(minnum>pizza[i].front()){ minnum=pizza[i].front(); minq=i; } } } if(minnum!=INF){ Bake(minnum); pizza[minq].pop(); for(int i=0;i<7;i++) if(minq & (1<<i)){ cnt[i]--; } } } void Order(int N, int *A){ int nowpiz=0; for(int i=0;i<N;i++) nowpiz|=1<<A[i]; pizza[nowpiz].push(on++); chk(); } void Delivery(int I){ cnt[I]++; chk(); }
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...