Pagini recente » Cod sursa (job #2962583) | Cod sursa (job #634643) | Cod sursa (job #1364305) | Cod sursa (job #836950) | Cod sursa (job #3192435)
#include <bits/stdc++.h>
using namespace std;
#define MAX_N 100000
int s[MAX_N], x[MAX_N], y[MAX_N], c[MAX_N];
int findp( int x ){
if( s[x] == x )
return s[x];
else{
s[x] = findp( s[x] );
return s[x];
}
}
int main(){
ifstream cin( "disjoint.in" );
ofstream cout( "disjoint.out");
int n, m, a, b, i;
cin >> n >> m;
for( i = 0; i < m; i++ ){
cin >> c[i] >> x[i] >> y[i];
s[x[i]] = x[i];
s[y[i]] = y[i];
}
for( i = 0; i < m; i++ ){
if( c[i] == 2 ){
a = findp( x[i] );
b = findp( y[i] );
if( a == b )
cout << "DA";
else
cout << "NU";
cout << "\n";
}
else{
a = findp( x[i] );
b = findp( y[i] );
s[b] = a;
}
}
return 0;
}