Submission #882162

#TimeUsernameProblemLanguageResultExecution timeMemory
882162androCave (IOI13_cave)C++14
0 / 100
21 ms600 KiB
#include <bits/stdc++.h> #include "cave.h" using namespace std; /* int n; void answer(int S[],int D[]){ for(int i=0;i<n;i++)cout<<S[i]<<" "; cout<<endl; for(int i=0;i<n;i++)cout<<D[i]<<" "; exit(0); } int tryCombination(int S[]){ cout<<"? "; for(int i=0;i<n;i++)cout<<S[i]<<" "; cout<<endl; int x; cin>>x; return x; }*/ void exploreCave(int N) { int S[N]; int D[N]; for(int i=0;i<N;i++){ S[i]=0; } for(int i=0;i<N;i++){ int A=tryCombination(S); if(A==-1)break; if(A>=i+1){ } else { S[i]=1; } } for(int i=0;i<N;i++){ int l=0,r=N-1,p=-1; while(l<=r){ int mid=(l+r)/2; for(int j=mid+1;j<N;j++)S[j]^=1; if(tryCombination(S)>=i+1){ r=mid-1; p=mid; } else { l=mid+1; } for(int j=mid+1;j<N;j++)S[j]^=j; } D[p]=i; } answer(S,D); }/* signed main(){ cin>>n; exploreCave(n); }*/
#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...