#include"bits/stdc++.h"
// #include"m.cpp"
using namespace std;
using ll=long long;
#define S second
#define F first
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;
vector<int>a(n,1);
set<int>s;
for(int i=2;i<=n;i++)s.insert(i);
for(int i=1;i<n;i++){
bool flag=1;
for(int j=0;j<i;j++){
cout<<"2 "<<j+1<<' '<<i+1<<endl;
int r;
cin>>r;
if(r==1){
a[i]=a[j];
flag=0;
break;
}
}
if(flag){
s.insert(*s.begin());
s.erase(s.begin());
}
}
cout<<0;
for(int i:a)cout<<' '<<i;
cout<<flush;
}
| # | 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... |