Pagini recente » Cod sursa (job #2150991) | Cod sursa (job #2293340) | Cod sursa (job #2458720) | Cod sursa (job #1274583) | Cod sursa (job #3197557)
#include <bits/stdc++.h>
#define NN 100005
using namespace std;
ifstream fin ("disjoint.in");
ofstream fout ("disjoint.out");
int n, nrop, op, a, b;
int t[NN];
int tata(int nod)
{
if(t[nod] == nod)
return nod;
t[nod] = tata(t[nod]);
return t[nod];
}
void uneste(int a, int b)
{
int ta, tb;
t[a] = tata(a);
t[b] = tata(b);
if(t[a] <= t[b])
t[t[b]] = t[a];
else
t[t[a]] = t[b];
}
int main()
{
fin >> n >> nrop;
for(int i = 1 ; i <= n ; i++)
t[i] = i;
for(int i = 1 ; i <= nrop ; i++)
{
fin >> op >> a >> b;
if(op == 1)
uneste(a, b);
else
{
if(tata(a) == tata(b))
fout << "DA" << '\n';
else
fout << "NU" << '\n';
}
}
return 0;
}