Cod sursa(job #1869357)

Utilizator sebi110Ciobanu Sebastian sebi110 Data 5 februarie 2017 19:20:40
Problema Paduri de multimi disjuncte Scor 100
Compilator cpp Status done
Runda Arhiva educationala Marime 0.57 kb
#include <fstream>

using namespace std;
ifstream fin("disjoint.in");
ofstream fout("disjoint.out");
int t[100001];
int root(int x)
{
    if(t[x]==0)
        return x;
    t[x]=root(t[x]);
    return t[x];
}
int main()
{
    int n,m,i,op,x,y;
    fin>>n>>m;
    for(i=1;i<=m;i++)
    {
        fin>>op>>x>>y;
        if(op==1)
        {
            t[root(x)]=root(y);
        }
        else
        {
            if(root(x)==root(y))
                fout<<"DA"<<'\n';
            else
                fout<<"NU"<<'\n';
        }
    }
    return 0;
}