Pagini recente » Rating Albu Andreea-Cristiana (andreeacristiana) | Cod sursa (job #3281224) | Cod sursa (job #1179204) | Cod sursa (job #1511108) | Cod sursa (job #1705925)
#include <iostream>
#include <fstream>
#define MAX 100001
unsigned int n, m;
int multime[MAX];
int findSet( int elem )
{
if( elem == multime[elem] )
{
return elem;
}
else
{
return multime[elem] = findSet( multime[elem] );
}
}
int main( void )
{
freopen( "disjoint.in", "r", stdin );
freopen( "disjoint.out", "w", stdout );
std::cin >> n >> m;
for( int i = 1; i <= n; ++i )
{
multime[i] = i;
}
int cod, x, y;
for( int i = 0; i < m; ++i )
{
std::cin >> cod >> x >> y;
if( cod == 1 )
{
if( findSet(x) != findSet(y) )
{
multime[findSet(x)] = findSet(y);
}
}
else if( cod == 2 )
{
findSet(x) != findSet(y) ? std::cout << "NU\n" : std::cout << "DA\n";
}
}
fclose( stdin );
fclose( stdout );
return 0;
}