Cod sursa(job #1162049)

Utilizator denis_tdrdenis tdr denis_tdr Data 31 martie 2014 16:45:07
Problema Paduri de multimi disjuncte Scor 40
Compilator cpp Status done
Runda Arhiva educationala Marime 0.63 kb
#include<iostream>
#include<fstream>
#include<vector>
using namespace std;
int n, m, t, x, y, m1, m2;
vector<int> v;
int main(){
    ifstream f("disjoint.in");
    ofstream g("disjoint.out");
    f>>n>>m;
    v.resize(n+1, 0);
    for(int i=1;i<=n;i++)
        v[i]=i;
    while(m--){
        f>>t>>x>>y;
        if(t==1){
            m1=min(v[x],v[y]);
            m2=max(v[x],v[y]);
            for(int j=1;j<=n;j++)
                if(v[j]==m2)
                    v[j]=m1;
        }else{
            g<<(v[x]==v[y]?"DA\n":"NU\n");
            //cout<<(v[x]==v[y]?"DA\n":"NU\n");
        }

    }
    return 0;
}