Pagini recente » Cod sursa (job #188711) | Cod sursa (job #146678) | Cod sursa (job #45023) | Cod sursa (job #2662602) | Cod sursa (job #2126586)
#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] ? 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;
}