Pagini recente » Cod sursa (job #3120901) | Cod sursa (job #1493557) | Cod sursa (job #1133093) | Cod sursa (job #679319) | Cod sursa (job #1451365)
#include<fstream>
using namespace std;
ifstream cin("disjoint.in");
ofstream cout("disjoint.out");
int n, m, i, p[100004];
int find(int x)
{
return x==p[x] ? x : p[x]=find(p[x]);
}
void uneste(int x, int y)
{
p[find(x)]=find(y);
}
int main()
{
cin>>n>>m;
for (i=1;i<=n;i++) p[i]=i;
while (m--)
{
int op, x, y;
cin >> op >> x >> y;
if (op==1)
{
uneste(x,y);
}
else
{
cout << (find(x)==find(y) ? "DA" : "NU") << "\n";
}
}
return 0;
}