Pagini recente » Cod sursa (job #1671682) | Cod sursa (job #2825582) | Cod sursa (job #700775) | Cod sursa (job #560794) | Cod sursa (job #2346661)
//#include <bits/stdc++.h>
#include <stdio.h>
#include <stdlib.h>
int dad[100001];
int boss( int slave ) {
if ( dad[slave] != slave )
dad[slave] = boss( dad[slave] );
return dad[slave];
}
int main() {
FILE *fin, *fout;
int n, m, i, c, x, y;
fin = fopen( "disjoint.in", "r" );
fout = fopen( "disjoint.out", "w" );
fscanf( fin, "%d%d", &n, &m );
for ( i = 1; i <= n; i++ )
dad[i] = i;
for ( i = 0; i < m; i++ ) {
fscanf( fin, "%d%d%d", &c, &x, &y );
if ( c == 1 ) {
dad[ boss( y )] = boss( x );
} else {
if ( boss( x ) == boss( y ) )
fprintf( fout, "DA\n" );
else
fprintf( fout, "NU\n" );
}
}
fclose( fin );
fclose( fout );
return 0;
}