Submission #207769

#TimeUsernameProblemLanguageResultExecution timeMemory
207769a_playerCave (IOI13_cave)C++14
51 / 100
720 ms632 KiB
#include "cave.h" #include <bits/stdc++.h> #define try tryCombination using namespace std; const int MAXN = 5e3+5; int S[MAXN]; int D[MAXN]; int st[MAXN]; int N; vector<int> u; bool check(int t,bool open, int i){ for(int j=0;j<=t;j++)st[j]=open; for(int j=t+1;j<N;j++)st[j]=!open; for(int x:u)st[x]=S[x]; int h=try(st); return h==i; } void exploreCave(int N){ ::N=N; for(int i=0;i<N;i++){ int t=try(S); bool open=false; if(t==i)open=true; int x=-1; for(int b=N;b>=1;b/=2) while(check(x+b,open,i))x+=b; D[x+1]=i; S[x+1]=open; u.push_back(x+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...