Cod sursa(job #2561015)

Utilizator danbesuDan Besu danbesu Data 28 februarie 2020 15:06:51
Problema Paduri de multimi disjuncte Scor 100
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 0.55 kb
#include<fstream>
using namespace std;

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

int n, m, t[100001];
int rad(int a){
    if(t[a] == 0) return a;
    rad(t[a]);
}
int main(){

    in>>n>>m;
    while(m--){
        int T; in>>T;
        int a,  b; in >> a >> b;

        if(T == 1){
            t[rad(b)] = rad(a);
        }
        if(T == 2){
            if(rad(a) == rad(b))
                out<<"DA"<<'\n';
            else out<<"NU"<<'\n';
        }
    }

    in.close();
    out.close();
    return 0;
}