Pagini recente » Cod sursa (job #106826) | Cod sursa (job #2571708) | Cod sursa (job #562058) | Cod sursa (job #3166028) | Cod sursa (job #2781709)
#include <bits/stdc++.h>
#define NMAX 100005
using namespace std;
ifstream fin("disjoint.in");
ofstream fout("disjoint.out");
int t[NMAX];
void uneste(int x, int y);
int radacina(int x);
int main()
{
int n, m, i, a, x, y;
fin >> n >> m;
for(i = 1; i <= n; i++) t[i] = i;
while(m--)
{
fin >> a >> x >> y;
if(a == 1) uneste(x, y);
else
{
if(radacina(x) == radacina(y)) fout << "DA" << '\n';
else fout << "NU" << '\n';
}
}
return 0;
}
void uneste(int x, int y)
{
t[radacina(x)] = radacina(y);
}
int radacina(int x)
{
if(t[x] != x) t[x] = radacina(t[x]);
return t[x];
}