https://www.luogu.com.cn/problem/P3367
下面是代码:
#include<bits/stdc++.h>
using namespace std;
int n,m;
int arr[10010];
int findfather(int x){
int r=x;
while(arr[r]!=r){
r=arr[r];
}
return r;
}
int main(){
for(int i=0;i<10010;i++){
arr[i]=i;
}
cin>>n>>m;
while(m--){
int z,x,y;
cin>>z>>x>>y;
if(z==1){
if(x<y){
arr[y]=x;
}
else{
arr[x]=y;
}
}
else{
if(findfather(x)==findfather(y)){
cout<<"Y"<<endl;
return 0;
}
else{
cout<<"N"<<endl;
}
}
}
return 0;
}