Submission #18812

# Submission time Handle Problem Language Result Execution time Memory
18812 2016-02-15T21:24:59 Z ggoh Last supper (IOI12_supper) C++
0 / 100
465 ms 16220 KB
#include "advisor.h"

void ComputeAdvice(int *C, int N, int K, int M)
{
    int t=0,u=N,p;
    u--;
    while(u)
    {
        u/=2;t++;
    }
    for(int i=0;i<N;i++)
    {
        u=C[i];p=t;
        while(p)
        {
            WriteAdvice(u%2);
            p--;
            u/=2;
        }
    }
}


#include "assistant.h"
int ch[100002],late[100002],st[100002],color[100002];
void Assist(unsigned char *A, int N, int K, int R)
{
    int t=0,u=N,sz=0,p=0,on;
    u--;
    while(u)
    {
        u/=2;t++;
    }
    while(p<R)
    {
        u=0;
        for(int i=0;i<t;i++)
        {
            u+=A[p+i]*(1<<i);
        }
        color[sz++]=u;
        p+=t;
    }
    for(int i=0;i<N;i++)late[i]=-1;
    t=0;
    for(int i=0;i<N;i++)
    {
        late[color[i]]=i;
    }
    for(int i=0;i<K;i++)
    {
        ch[i]=1;
        on=i;
        if(late[i]==-1)st[t++]=i;
    }
    for(int i=0;i<N;i++)
    {
        if(ch[color[i]]==1)
        {
            GetRequest();
            if(late[color[i]]==i)
            {
                late[color[i]]=-1;
                st[t++]=color[i];
            }
        }
        else
        {
            GetRequest();
            if(t)
            {
                t--;
                PutBack(st[t]);
                ch[st[t]]=0;
                ch[color[i]]=1;
            }
            else
            {
                PutBack(on);
                ch[on]=0;
                on=color[i];
                ch[on]=1;
            }
            if(late[color[i]]==i)
            {
                late[color[i]]=-1;
                st[t++]=color[i];
            }
        }
    }
}

Compilation message

assistant.cpp: In function 'void Assist(unsigned char*, int, int, int)':
assistant.cpp:58:23: warning: 'on' may be used uninitialized in this function [-Wmaybe-uninitialized]
                 ch[on]=0;
                 ~~~~~~^~
# Verdict Execution time Memory Grader output
1 Correct 4 ms 608 KB Output is correct
2 Correct 4 ms 824 KB Output is correct
3 Correct 6 ms 1076 KB Output is correct
4 Incorrect 16 ms 1340 KB Error - Putting back a color that is not on the scaffold
5 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Incorrect 41 ms 2192 KB Error - Putting back a color that is not on the scaffold
2 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Correct 368 ms 12060 KB Output is correct
2 Incorrect 26 ms 13152 KB Error - advice is too long
3 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Incorrect 5 ms 13152 KB Error - advice is too long
2 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Incorrect 391 ms 14484 KB Error - Putting back a color that is not on the scaffold
2 Partially correct 375 ms 15920 KB Output is partially correct - 1700000 bits used
3 Partially correct 387 ms 16024 KB Output is partially correct - 1700000 bits used
4 Partially correct 382 ms 16064 KB Output is partially correct - 1700000 bits used
5 Partially correct 440 ms 16104 KB Output is partially correct - 1700000 bits used
6 Partially correct 465 ms 16104 KB Output is partially correct - 1700000 bits used
7 Partially correct 412 ms 16104 KB Output is partially correct - 1697263 bits used
8 Partially correct 402 ms 16124 KB Output is partially correct - 1700000 bits used
9 Partially correct 399 ms 16144 KB Output is partially correct - 1700000 bits used
10 Partially correct 444 ms 16220 KB Output is partially correct - 1700000 bits used