#include<bits/stdc++.h>
using namespace std;
int n,m,i,x,y,q,p;
int fat[100010],num[100010];
char c;
int find(int x){
if(x!=fat[x])return fat[x]=find(fat[x]);
return x;
}
int main(){
scanf("%d%d",&n,&m);
for(i=1;i<=n;i++){
fat[i]=i;
num[i]=1;
}
for(i=1;i<=m;i++){
scanf("\n%c",&c);
if(c=='M'){
scanf("%d%d",&x,&y);
q=find(x);
p=find(y);
if(q!=p){
fat[q]=p;
num[p]+=num[q];
}
}
else{
scanf("%d",&x);
printf("%d\n",num[find(x)]);
}
}
return 0;
}
一本通训练指导教程P425 亲戚
最新推荐文章于 2021-03-27 22:00:18 发布