Cod sursa(job #2289106)

Utilizator buhaidarius@gmail.comBuhai Darius [email protected] Data 24 noiembrie 2018 11:12:52
Problema Paduri de multimi disjuncte Scor 10
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 0.67 kb
//
//  main.cpp
//  Disjoint
//
//  Created by Darius Buhai on 24/11/2018.
//  Copyright © 2018 Darius Buhai. All rights reserved.
//

#include <iostream>
#include <fstream>
#define MAXL 100001

using namespace std;

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

int n,m;
int a[MAXL];

int dad(int c)
{
    while(a[c]) c = a[c];
    return c;
}

int main() {
    fin>>n>>m;
    for(int i=0;i<m;i++)
    {
        int action, x, y;
        fin>>action>>x>>y;
        if(action==1)
            a[y] = x;
        else{
            if(dad(x)==dad(y))
                fout<<"DA"<<endl;
            else
                fout<<"NU"<<endl;
        }
    }
    
    return 0;
}