Pagini recente » Cod sursa (job #2948636) | Cod sursa (job #380259) | Cod sursa (job #1889424) | Cod sursa (job #3185812) | Cod sursa (job #2126590)
#include <fstream>
using namespace std;
ifstream fin ("disjoint.in");
ofstream fout ("disjoint.out");
int n,m,i,c,x,y,p[100001];
void Union ( int x, int y )
{
p[x] = y;
}
int Find ( int x )
{
return x != p[x] ? p[x] = Find(p[x]) : x;
}
int main()
{
fin >> n >> m;
for ( i=1; i<=n; i++ )
p[i] = i;
for ( i=0; i<m; i++ )
{
fin >> c >> x >> y;
if ( c == 1 )
Union ( Find(x), Find(y) );
else
fout << ( Find(x) == Find(y) ? "DA\n" : "NU\n" );
}
return 0;
}