Pagini recente » Cod sursa (job #7040) | Cod sursa (job #461276) | Cod sursa (job #1783489) | Cod sursa (job #2330340) | Cod sursa (job #2803417)
#include <fstream>
const int N = 100000;
int r [ N ];
int suprem ( int x ) {
if ( x == r [ x ] )
return x;
else {
r[x] = suprem ( r [ x ] );
return r [ x ];
}
}
using namespace std;
int main( ) {
ifstream fin ( "disjoint.in" );
ofstream fout ( "disjoint.out" );
int n, m, i, cer, x, y;
fin >> n >> m;
for ( i = 0; i < n; i++ )
r [ i ] = i;
for ( i = 0; i < m; i++ ){
fin >> cer >> x >> y;
if ( cer == 1 ){
r [ suprem ( x ) ] = r [ suprem ( y ) ];
}
else{
if ( suprem ( x ) == suprem ( y ) )
fout << "DA";
else
fout << "NU";
}
}
return 0;
}