Submission #18939

#TimeUsernameProblemLanguageResultExecution timeMemory
18939dltldls95올림픽 피자 (tutorial5)C++98
0 / 100
1000 ms8360 KiB
#include <iostream> #include <cstring> #include <vector> #include "pizza.h" #define C(a) memset((a),0,sizeof(a)) using namespace std; int order[100000][8]; int ordered[100000]; int foodorder[8][100000]; vector<int> foods[8]; int firstorder = -1; int lastorder = -1; int currentFood[8]; void Init() { C(order); C(ordered); } void CheckOrder(int food) { } void CheckAll() { for(int i = firstorder; i <= lastorder; i++) { if(!ordered[i]) continue; bool bakable = true; for(int j = 0; j < 8; j++) { if(order[i][j] == 1 && currentFood[j] == 0) { bakable = false; break; } } if(bakable) { Bake(i); ordered[i] = 0; for(int j = 0; j < 8; j++) { if(order[i][j]) currentFood[j]--; } if(i == firstorder) { for(int j = firstorder+1; j < 100000; j++) { if(ordered[j]) { firstorder = j; } } } } } } void Order(int n, int* a) { if(firstorder == -1) firstorder = 0; lastorder++; ordered[lastorder] = 1; for(int i = 0; i < n; i++) { //foods[lastorder].push_back(a[i]); order[lastorder][a[i]]++; } CheckAll(); } void Delivery(int l) { currentFood[l]++; CheckAll(); }
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...