Pagini recente » Cod sursa (job #2918925) | Cod sursa (job #3033579) | Cod sursa (job #2788738) | Cod sursa (job #2296132) | Cod sursa (job #3256120)
#include <bits/stdc++.h>
using namespace std;
const string file="disjoint";
ifstream fin(file+".in");
ofstream fout(file+".out");
int a[100001];
int get_par(int i)
{
if (i==a[i])return i;
a[i]=get_par(a[i]);
return a[i];
}
void join(int x, int y)
{
x=get_par(x), y=get_par(y);
a[x]=a[y];
}
int main()
{
int n, m;
fin>>n>>m;
for (int i=1; i<=n; ++i)a[i]=i;
while (m--){
int c, x, y;
fin>>c>>x>>y;
if (c==1){
join(x, y);
} else {
fout<<(get_par(x)==get_par(y) ? "DA\n" : "NU\n");
}
}
return 0;
}