#include <bits/stdc++.h>
using namespace std;
int n,p[151];
int f(int x){return p[x]==x?x:p[x]=f(p[x]);}
int main(){
ios::sync_with_stdio(false);
cin.tie(nullptr);
cin>>n;
for(int i=1;i<=n;i++)p[i]=i;
for(int i=1;i<=n;i++){
for(int j=i+1;j<=n;j++){
if(f(i)==f(j))continue;
cout<<2<<" "<<i<<" "<<j<<endl;
cout.flush();
int r;
cin>>r;
if(r==1)p[f(j)]=f(i);
}
}
unordered_map<int,int> m;
int c=0;
vector<int>a(n+1);
for(int i=1;i<=n;i++){
int r=f(i);
if(!m.count(r))m[r]=++c;
a[i]=m[r];
}
cout<<0;
for(int i=1;i<=n;i++)cout<<" "<<a[i];
cout<<endl;
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... |