hiho week 14 register

Ended

Participants:423

Verdict:Accepted
Score:100 / 100
Submitted:2014-10-04 21:09:41

Lang:G++

Edit
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
#include <bits/stdc++.h>
using namespace std;
map<string,int> H;
int r[100010],o,n,c=0,A,B;
int f(int i){return r[i]==i?i:r[i]=f(r[i]);}
string a,b;
int main(){
    for(cin>>n;n--;){
        cin>>o>>a>>b;
        if(!(A=H[a]))A=H[a]=++c,r[c]=c;
        if(!(B=H[b]))B=H[b]=++c,r[c]=c;
        if(o)puts(f(A)==f(B)?"yes":"no");
        else r[f(A)]=f(B);
    }
}
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX