题解 | #I Love ACM!#

DongDong认亲戚

https://ac.nowcoder.com/acm/problem/23803

map+并查集

#include<bits/stdc++.h>
using namespace std;
map<string,string>mp;

string find(string x){
    return mp[x]==x?mp[x]:mp[x]=find(mp[x]);
}

int main(){
    int n,m;
    string _;
    cin>>n>>m;
    for(int i=1;i<=n;i++){
        cin>>_;
        mp[_]=_;
    }
    for(int i=1;i<=m;i++){
        int op;
        string t,u;
        cin>>op>>t>>u;
        string x=find(t),y=find(u);
        if(op==1){
            mp[x]=y;
        }
        else{
            if(x==y)cout<<1<<endl;
            else cout<<0<<endl;
        }
    }
    return 0;
}
全部评论

相关推荐

04-17 18:32
门头沟学院 Java
野猪不是猪🐗:他跟你一个学校,你要是进来之后待遇比他好,他受得了?
点赞 评论 收藏
分享
点赞 评论 收藏
分享
评论
1
收藏
分享

创作者周榜

更多
牛客网
牛客企业服务