Pagini recente » Cod sursa (job #1861299) | Cod sursa (job #2491357) | Cod sursa (job #1973604) | Cod sursa (job #2955018) | Cod sursa (job #2251716)
#include <cstdio>
using namespace std;
#define NMAX 100001
int P[ NMAX ];
int Root ( int x ) {
if ( P[ x ] == P[ P[ x ] ] )
return P[ x ];
return P[ x ] = Root( P[ x ] );
}
int main () {
freopen( "disjoint.in", "r", stdin );
freopen( "disjoint.out", "w", stdout );
int n, m, i, j, x, y, k,rx, ry;
scanf( "%d%d",&n,&m );
for ( i = 1; i <= n; ++i ) P[ i ] = i;
while ( m-- ) {
scanf( "%d%d%d",&k,&x,&y );
rx = Root( x );
ry = Root( y );
if ( k == 1 ) P[ rx ] = ry;
else {
if ( rx == ry )printf( "DA\n" );
else printf( "NU\n" );
}
}
return 0;
}