Pagini recente » Cod sursa (job #569276) | Cod sursa (job #500997) | Cod sursa (job #1748471) | Cod sursa (job #2444582) | Cod sursa (job #1830220)
#include <fstream>
using namespace std;
ifstream f{ "disjoint.in" };
ofstream q{ "disjoint.out" };
int parent[100005];
int find(int x)
{
if (parent[x] == x) return x;
parent[x] = find(parent[x]);
return parent[x];
}
int main()
{
int n = 0, m = 0;
int x, y, op;
f >> n >> m;
for (int i = 1; i <= n; ++i) parent[i] = i;
for (int i = 1; i <= m; ++i)
{
f >> op >> x >> y;
if (op == 1) parent[find(x)] = find(y);
else (find(x) == find(y)) ? q << "DA\n" : q << "NU\n";
}
f.close();
q.close();
return 0;
}