#include <bits/stdc++.h>
using namespace std;
#define pb push_back
#define ll long long
const int off=1<<19;
const int inf=1e9+4;
const int mxsz=2e5+4;
int q(int k,vector<int>a){
cout<<k<<" ";
for (auto x:a){
cout<<x<<" ";
}
int x=0;
if (k!=0){
cin>>x;
}
return x;
}
int main(){
int n;
cin>>n;
int x;
int cnt=1;
vector<int>adj[n+1];
vector<int>ans(n+1);
for (int i=1;i<=n;i++){
for (int j=i+1;j<=n;j++){
vector<int>a;
a.pb(i);
a.pb(j);
x=q(2,a);
if (x==1){
if (cnt==1){
ans[i]=1;
cnt++;
}
adj[i].pb(j);
}
}
}
for (int i=1;i<=n;i++){
if (ans[i]==0){
ans[i]=cnt;
cnt++;
}
for (auto x:adj[i]){
ans[x]=ans[i];
}
}
vector<int>out;
for (int i=1;i<=n;i++)out.pb(ans[i]);
q(0,out);
return 0;
}
# | 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... |