Submission #1310115

#TimeUsernameProblemLanguageResultExecution timeMemory
1310115FaresSTHCarnival (CEOI14_carnival)C++20
0 / 100
9 ms1212 KiB
#include"bits/stdc++.h" // #include"m.cpp" using namespace std; using ll=long long; #define S second #define F first int qry(vector<int>x){ cout<<x.size(); for(int i:x)cout<<' '<<i; cout<<endl; int r; cin>>r; return r; } vector<int>rng(int i,int l,int r){ vector<int>x; if(i!=-1)x.push_back(i); for(int i=l;i<=r;i++)x.push_back(i); return x; } vector<int>a; set<int>s; bool vis[200][200][200]; void rec(int i,int l,int r){ if(vis[i][l][r])return; vis[i][l][r]=1; // cout<<"enter "<<i<<' '<<l<<' '<<r<<endl; int q=qry(rng(i,l,r)); if(qry(rng(-1,l,r))+1==q)return; if(q==1){ for(int j=l;j<=r;j++)a[j]=a[i]; return; } int m=(l+r)/2; rec(i,l,m); rec(i,m+1,r); } int main(){ cin.tie(0)->sync_with_stdio(0); // remember(4095); // cout<<compare(2214); // int mxa=0,mxb=0; // for(int i=0;i<4096;i++){ // remember(i); // // cout<<i<<' '<<compare(0)<<endl; // mxa=max(mxa,cn); // for(int j=0;j<4096;j++){ // int g=compare(j); // mxb=max(mxb,k); // if(mxb==14)cout<<j<<' '<<i<<endl; // } // } // cout<<mxb; // remember(31); // cout<<compare(63)<<endl; // cout<<compare(31)<<endl; // cout<<compare(30)<<endl; // cout<<compare(32)<<endl; int n; cin>>n; a.resize(n+1,-1); for(int i=1;i<=n;i++)s.insert(i); for(int i=1;i<=n;i++){ if(a[i]!=-1)continue; a[i]=*s.begin(); s.erase(s.begin()); rec(i,i+1,n); } cout<<0; for(int i=1;i<=n;i++)cout<<' '<<a[i]; cout<<flush; }
#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...