Cod sursa(job #2285835)

Utilizator crion1999Anitei cristi crion1999 Data 19 noiembrie 2018 13:16:18
Problema Paduri de multimi disjuncte Scor 70
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 0.59 kb
#include <iostream>
#include <fstream>
using namespace std;
ifstream fi("disjoint.in");
ofstream fo("disjoint.out");
int p[100005];

int Father(int nod)
{
    if(p[nod] == 0)
        return nod;
    else
        return Father(p[nod]);

}

int t,n;
int main()
{
    fi>>n>>t;
    int op,a,b;
    while(t--)
    {
        fi>>op>>a>>b;
        if(op == 1)
        {
            p[Father(a)] = Father(b);
        }
        if(op == 2)
        {
            if(Father(a) == Father(b))
                fo<<"DA\n";
            else
                fo<<"NU\n";
        }
    }
}