Pagini recente » Borderou de evaluare (job #192912) | Cod sursa (job #2762312) | Cod sursa (job #296697) | Cod sursa (job #2306297) | Cod sursa (job #1404704)
#include <bits/stdc++.h>
using namespace std;
int t[100005], x, y, n, tip, m, i;
int find(int x)
{
if(t[x] != x)
t[x] = find(t[x]);
return t[x];
}
int main()
{
freopen("disjoint.in", "r", stdin);
freopen("disjoint.out", "w", stdout);
scanf("%d%d", &n, &m);
for(i = 1; i <= n; i++)
t[i] = i;
for(; m; m--)
{
scanf("%d%d%d", &tip, &x, &y);
x = find(x);
y = find(y);
if(tip == 1)
t[x] = y;
else
x == y ? printf("DA\n") : printf("NU\n");
}
return 0;
}