This submission is migrated from previous version of oj.uz, which used different machine for grading. This submission may have different result if resubmitted.
#include "pizza.h"
void Init(){}
int cnt[8],q[1<<8][100010],s[1<<8],e[1<<8],m;
void Order(int n, int *a){
    int i,t=0;
    for(i=0;i<n;++i)if(!cnt[a[i]])break;
    if(i<n){
        for(i=0;i<n;++i)t+=(1<<a[i]);
        q[t][e[t]++]=m++;
    }
    else{
        Bake(m++);
        for(i=0;i<n;++i)--cnt[a[i]];
    }
}
void Delivery(int x){
    int i,j,k=1e3;
    ++cnt[x];
    if(cnt[x]<2){
        for(i=1;i<(1<<8);++i)if(i&(1<<x)){
            for(j=0;j<8;++j)if(i&(1<<j)&&!cnt[j])break;
            if(j>7&&s[i]<e[i]&&k>q[i][s[i]])k=i;
        }
        if(k<1e3){
            for(i=0;i<8;++i)if(k&(1<<i))--cnt[i];
            Bake(q[k][s[k]++]);
        }
    }
}
| # | Verdict  | Execution time | Memory | Grader output | 
|---|
| Fetching results... | 
| # | Verdict  | Execution time | Memory | Grader output | 
|---|
| Fetching results... | 
| # | Verdict  | Execution time | Memory | Grader output | 
|---|
| Fetching results... | 
| # | Verdict  | Execution time | Memory | Grader output | 
|---|
| Fetching results... |