Pagini recente » Cod sursa (job #1155194) | Cod sursa (job #1316497) | Cod sursa (job #1443013) | Cod sursa (job #2806269) | Cod sursa (job #1052101)
#include <cstdio>
#define Nmax 100001
using namespace std;
int N, M, T[Nmax];
void Citire()
{
scanf("%d %d", &N, &M);
for (int i = 1; i <= N; ++i)
T[i] = i;
}
int Caut_tata(int nod)
{
if (T[nod] != nod)
T[nod] = Caut_tata(T[nod]);
return T[nod];
}
void Operatii()
{
int op, x, y;
for (int i = 1; i <= M; ++i)
{
scanf("%d %d %d", &op, &x, &y);
T[x] = Caut_tata(x);
T[y] = Caut_tata(y);
if (op == 1)
T[T[x]] = T[y];
else if (T[x] == T[y])
printf("DA\n");
else
printf("NU\n");
}
}
int main()
{
freopen("disjoint.in", "r", stdin);
freopen("disjoint.out", "w", stdout);
Citire();
Operatii();
return 0;
}