Pagini recente » Cod sursa (job #1329658) | Cod sursa (job #2489972) | Cod sursa (job #1916562) | Cod sursa (job #305728) | Cod sursa (job #2225161)
#include <bits/stdc++.h>
using namespace std;
ifstream fin("disjoint.in");
ofstream fout("disjoint.out");
int a[100005], n, m;
void Union(int x,int y)
{
a[y] = x;
}
int Find(int x)
{
int r, y;
r = x;
while(a[r])
r = a[r];
y = r;
r = x;
while(a[r])
{
a[r] = y;
r = a[r];
}
return y;
}
int main()
{
int obt, x, y;
fin >> n >> m;
for(int i = 1; i <= m; i++)
{
fin >> obt >> x >> y;
if(obt == 1)
Union(Find(x), Find(y));
else if(Find(x) == Find(y)) fout << "Da\n";
else fout << "Nu\n";
}
return 0;
}