Pagini recente » Cod sursa (job #1509134) | Cod sursa (job #2787894) | Cod sursa (job #1160561) | Cod sursa (job #896957) | Cod sursa (job #1263337)
#include <cstdio>
#define N 100001
using namespace std;
int n, m, t[N];
int findRoot(int i){
if(i != t[i])
t[i] = findRoot(t[i]);
return t[i];
}
void solve1(int x, int y){
int X = findRoot(x), Y = findRoot(y);
t[X] = Y;
}
void solve2(int x, int y){
int X = findRoot(x), Y = findRoot(y);
if(X == Y)
printf("DA\n");
else
printf("NU\n");
}
int main(){
freopen("disjoint.in", "r", stdin);
freopen("disjoint.out", "w", stdout);
scanf("%d %d ", &n, &m);
for(int i = 1; i <= n; ++i)
t[i] = i;
for(int i = 1; i <= m; ++i){
int x, y, cod;
scanf("%d %d %d ", &cod, &x, &y);
if(cod == 1)
solve1(x, y);
else solve2(x, y);
}
return 0;
}