Submission #1192121

#TimeUsernameProblemLanguageResultExecution timeMemory
1192121ftmCarnival (CEOI14_carnival)C++20
100 / 100
6 ms432 KiB
#include<bits/stdc++.h> using namespace std; const int N=155; int a[N]; int F(int l,int r){ int x; cout << r-l+1 << ' '; for(int i=l;i<=r;i++) cout << i << ' '; cout << endl<<flush; cin >> x; return x; } int main(){ ios::sync_with_stdio(0); cin.tie(0); int n,cnt=1; cin >> n; a[1]=1; for(int i=2;i<=n;i++){ int x=F(1,i); if(x!=cnt){ a[i]=++cnt; } else{ /* int l=1,r=i-1; while(l<r){ int mid=(l+r)/2; int t=F(mid,i),y=F(mid,i-1); if(t==y) l=mid+1; else r=mid-1; } a[i]=a[l-1]; */ int l=1,r=i-1; while(l<r){ int mid=(l+r)/2; int t=F(i-mid,i); int y=F(i-mid,i-1); if(t==y) r=mid; else l=mid+1; } a[i]=a[i-l]; } //cout<<"a["<<i<<"] = "<<a[i]<<"\n"; } cout << "0 "; for(int i=1;i<=n;i++) cout << a[i] << ' '; }
#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...