| 比赛 | 
    板子大赛 | 
    评测结果 | 
    AAAAAAAAAA | 
    | 题目名称 | 
    社交网络 | 
    最终得分 | 
    100 | 
    | 用户昵称 | 
    AeeE5x | 
    运行时间 | 
    0.224 s  | 
    | 代码语言 | 
    C++ | 
    内存使用 | 
    3.42 MiB  | 
    | 提交时间 | 
    2025-01-22 14:24:48 | 
显示代码纯文本
#include<iostream> 
using namespace std;
int n,m;
int fa[20010];
inline int find(int x){
    if(fa[x]==x) return x;
    return fa[x]=find(fa[x]);
}
inline void merge(int x,int y){
    x=find(x),y=find(y);
    if(x!=y) fa[x]=y;
}
int main(){
    freopen("relation.in","r",stdin);
    freopen("relation.out","w",stdout);
    
    scanf("%d%d",&n,&m);
    for(int i=1;i<=n;i++) fa[i]=i;
    while(m--){
        int op,x,y;scanf("%d%d%d",&op,&x,&y);
        if(op==0) merge(x,y);
        else{
            if(find(x)==find(y)) printf("Yes\n");
            else printf("No\n");
        }
    }
    
    return 0;
}