Pagini recente » Cod sursa (job #579846) | Cod sursa (job #41700) | Cod sursa (job #2760867) | Cod sursa (job #2194881) | Cod sursa (job #1340449)
#include <iostream>
#include <fstream>
using namespace std;
ifstream in ("disjoint.in");
ofstream out ("disjoint.out");
const int MAXN = 100010;
int T[MAXN];
int Find (const int &node)
{
if (T[node] == node)
return node;
return (T[node] = Find (T[node]));
}
int main()
{
int N, M, i, op, a, b;
int Tx, Ty;
in >> N >> M;
for (i = 1; i <= N; i ++)
T[i] = i;
for (i = 1; i <= M; i ++){
in >> op >> a >> b;
Tx = Find (a);
Ty = Find (b);
if (op == 1)
T[Tx] = Ty;
else
if (Tx == Ty)
out << "DA\n";
else
out << "NU\n";
}
return 0;
}