记录一下错误点
#include <cmath>
#include <cstdio>
#include <vector>
#include <iostream>
#include <algorithm>
using namespace std;
int fa[102000];
int sz[102000];
int find(int x){
return x==fa[x]?x:fa[x]=find(fa[x]);
}
void merge(int x,int y){
int py=find(y),px=find(x);
if(px == py) return;//if belongs to the same community don't merge
sz[py]+=sz[px];
fa[px]=py;
}
int main() {
for(int i=1;i<101000;i++) fa[i]=i,sz[i]=1;
int n,q;cin>>n>>q;
for(int i=0;i<q;i++){
char c;cin>>c;
if(c=='M'){
int m,n;cin>>m>>n;
merge(m,n);
}else{
int m;cin>>m;
m=find(m);
cout<<sz[m]<<endl;
}
}
return 0;
}