Cod sursa(job #527085)

Utilizator R.A.RFMI Romila Remus Arthur R.A.R Data 30 ianuarie 2011 16:35:07
Problema Paduri de multimi disjuncte Scor 100
Compilator cpp Status done
Runda Arhiva educationala Marime 0.55 kb
#include <fstream>
#define nmax 100042

using namespace std;

ifstream in("disjoint.in");
ofstream out("disjoint.out");

int T[nmax];

inline int multime(int nod)
{
    while(T[nod])
        nod=T[nod];
    return nod;
}

int main()
{
    int N,M,x,y,op,m1,m2;
    in>>N>>M;
    while(M--)
    {
        in>>op>>x>>y;
        m1=multime(x);
        m2=multime(y);
        if(op==1)
                T[m1]=m2;
        else
            if(m1==m2)
                out<<"DA\n";
            else out<<"NU\n";
    }
    return 0;
}