Pagini recente » Cod sursa (job #1178109) | Cod sursa (job #3142181) | Cod sursa (job #1473873) | Cod sursa (job #1226978) | Cod sursa (job #2372984)
#include <bits/stdc++.h>
using namespace std;
ifstream f("disjoint.in");
ofstream g("disjoint.out");
int parent[10005];
int setParent(int node)
{
if (parent[node] == node)
{
return node;
}
else
{ /*Compression*/
parent[node] = setParent(parent[node]);
}
return parent[node];
}
int main()
{
int n, m;
f >> n >> m;
for (int i = 1; i <= n; i++)
{
parent[i] = i;
}
for (int i = m, n1, n2, op; i > 0; i--)
{
f >> op >> n1 >> n2;
if (op == 1)
{
parent[setParent(n2)] = setParent(n1);
}
else
{
if (setParent(n1) == setParent(n2))
{
g << "DA\n";
}
else
{
g << "NU\n";
}
}
}
}