Pagini recente » Petrica | Monitorul de evaluare | Clasament Juniori | TVShow | Cod sursa (job #3296871)
#include <fstream>
using namespace std;
ifstream in("disjoint.in");
ofstream out("disjoint.out");
int n, m, v[100010], i, j, x, y, cer;
int fnd(int k)
{
if (k == v[k])
return k;
v[k] = fnd(v[k]);
return v[k];
}
int main()
{
in >> n >> m;
for (i = 1; i <= n; i++)
v[i] = i;
for (i = 1; i <= m; i++)
{
in >> cer >> x >> y;
if (cer == 1)
v[y] = v[x];
else
if (fnd(x) == fnd(y))
out << "DA\n";
else
out << "NU\n";
}
}