Cod sursa(job #2537600)

Utilizator Diana_IonitaIonita Diana Diana_Ionita Data 3 februarie 2020 19:51:37
Problema Paduri de multimi disjuncte Scor 100
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 0.58 kb
#include <bits/stdc++.h>

using namespace std;
ifstream fin("disjoint.in");
ofstream fout("disjoint.out");
int sef[100003];
int unionn(int i)
{
    if(sef[i]!=i)sef[i]=unionn(sef[i]);
    return sef[i];
}
int main()
{int n,m,i,px,py,tip,x,y;
fin>>n>>m;
for(i=1;i<=n;i++)sef[i]=i;
for(i=1;i<=m;i++)
{
    fin>>tip>>x>>y;
    if(tip==1)
    {
        px=unionn(x);
        py=unionn(y);
        sef[py]=px;
    }
    else
    {
          px=unionn(x);
        py=unionn(y);
        if(py==px)fout<<"DA"<<'\n';
        else fout<<"NU"<<'\n';
    }
}
    return 0;
}