#include <bits/stdc++.h>
using namespace std;
int32_t main(){
//ios::sync_with_stdio(false);
//cin.tie(nullptr);
int n;
cin >> n;
int same[n+1],uni[n+1];
memset(uni,0,sizeof(uni));
for(int i=1; i<=n; i++){
int lo=0,hi=i-1,mid;
while(lo<hi){
mid=(lo+hi+1)/2;
cout << (i-mid+1) << ' ';
for(int j=mid; j<=i; j++){
cout << j << ' ';
}
cout << endl;
int x;
cin >> x;
int dist=0;
for(int j=mid; j<i; j++) dist+=uni[j];
if(x<=dist) lo=mid;
else hi=mid-1;
}
same[i]=lo;
if(lo){
uni[lo]=0;
}
uni[i]=1;
}
int ans[n+1],cur=1;
for(int i=1; i<=n; i++){
if(same[i]==0){
ans[i]=cur;
cur++;
}
else ans[i]=ans[same[i]];
}
cout << 0 << ' ';
for(int i=1; i<=n; i++) cout << ans[i] << ' ';
cout << endl;
}
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |