Pagini recente » Cod sursa (job #2270286) | Cod sursa (job #1901973) | Cod sursa (job #2212922) | Cod sursa (job #2428750) | Cod sursa (job #2273831)
#include<stdio.h>
using namespace std;
int t[100002];
int cauta(int x){
if(t[x]==x) return x;
return t[x]=cauta(t[x]);
}
void uneste(int x, int y){
t[x]=y;
}
int main()
{
freopen("disjoint.in", "r", stdin);
freopen("disjoint.out", "w", stdout);
int n,x,m,y,i,p;
scanf("%d %d ", &n, &m);
for(i = 1; i <= n; i++) t[i]=i;
for(i = 1; i <= m; i++)
{
scanf("%d %d %d", &p, &x, &y);
if( p== 2)
{
if(cauta(x) == cauta(y))
printf("DA\n");
else
printf("NU\n");
}
else
uneste(cauta(x), cauta(y));
}
}