Pagini recente » Cod sursa (job #2689515) | Cod sursa (job #2323376) | Cod sursa (job #219947) | Cod sursa (job #1764932) | Cod sursa (job #3164223)
#include <iostream>
#include <fstream>
using namespace std;
#define nmax 100000
int parinte[nmax];
int compresie( int x ) {
if( parinte[x] == x )
return x;
parinte[x] = compresie( parinte[x] );
return parinte[x];
}
int main()
{
int n, q, i, t, x, y;
ifstream cin("disjoint.in");
ofstream cout("disjoint.out");
cin >> n >> q;
for( i = 1; i <= n; i++ )
parinte[i] = i;
for( i = 0; i < q; i++ ) {
cin >> t >> x >> y;
if( t == 1 )
parinte[x] = parinte[y];
else {
if( compresie(x) == compresie(y) )
cout << "DA\n";
else
cout << "NU\n";
}
}
return 0;
}