Submission #1247911

#TimeUsernameProblemLanguageResultExecution timeMemory
1247911denislavCave (IOI13_cave)C++20
12 / 100
140 ms512 KiB
# include <iostream> # include <vector> using namespace std; # include "cave.h" //# include "grader.c" const int MAX=5e3+11; int query(int S[]) { int resp=tryCombination(S); if(resp==-1) return 1e9; else return resp; } void exploreCave(int N) { int s[5111],d[5111]; for(int i=0;i<N;i++) { s[i]=0; d[i]=-1; } for(int i=0;i<N;i++) { int resp=query(s); int l=0,r=N-1,ans=0; while(l<r) { int mid=(l+r)/2; for(int j=l;j<=mid;j++) if(d[j]==-1) s[j]^=1; int resp2=query(s),L=i; if((resp==i and resp2==i) or (resp>i and resp2>i)) { l=mid+1; ans=mid+1; } else { r=mid; ans=mid; } for(int j=L;j<=mid;j++) if(d[j]==-1) s[j]^=1; } d[ans]=i; if(resp==i) s[ans]=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...