Submission #745476

#TimeUsernameProblemLanguageResultExecution timeMemory
745476AndrijaMCave (IOI13_cave)C++14
51 / 100
224 ms404 KiB
#include "cave.h" #include<bits/stdc++.h> using namespace std; void exploreCave(int N) { int pos[N],a[N],i,j,l,r,m; for(int i=0;i<=N;i++) a[i]=0,pos[i]=-1; for(i=0;i<N;i++){ l=0; r=N-1; bool k=(tryCombination(a)==i); while(l<r){ m=l+(r-l)/2; for(j=l;j<=m;j++) if(pos[j]==-1) a[j]=1-a[j]; if((tryCombination(a)==i)==k) l=m+1; else r=m; for(j=l;j<=m;j++) if(pos[j]==-1) a[j]=1-a[j]; } for(j=l;j<=r;j++) if(pos[j]==-1){ a[j]=1-a[j]; if(k!=(tryCombination(a)==i)){ if(!k) a[j]=1-a[j]; pos[j]=i; break; } } } answer(a,pos); }
#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...