Submission #710960

#TimeUsernameProblemLanguageResultExecution timeMemory
710960JJAnawatCave (IOI13_cave)C++17
0 / 100
462 ms396 KiB
#include "cave.h"
#include<bits/stdc++.h>

using namespace std;

int s[5005],d[5005];
bitset<5005> found(0);

void exploreCave(int n) {
    for(int cur=0;cur<n;cur++){
        for(int i=0;i<n;i++)
            if(!found[i])
                s[i]=0;
        int tt=tryCombination(s);
        int cr=0;
        if(tt==cur)
            cr=1;
        for(int i=0;i<n;i++)
            if(!found[i])
                s[i]=cr;
        int l=0,r=n-1;
        while(l<r){
            int m=(l+r)/2;
            for(int i=0;i<m;i++)
                if(!found[i])
                    s[i]=!cr;
            tt=tryCombination(s);
            for(int i=0;i<n;i++)
                s[i]=cr;
            if(tt==cur)
                r=m;
            else
                l=m+1;
        }
        d[l]=cur;
        s[l]=cr;
        found[l]=1;
    }
    answer(s,d);
}
#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...