Pagini recente » Cod sursa (job #498231) | Cod sursa (job #59863) | Cod sursa (job #339389) | Cod sursa (job #2698151) | Cod sursa (job #2708557)
#include <bits/stdc++.h>
using namespace std;
ifstream fin("disjoint.in");
ofstream fout("disjoint.out");
int T[100001],x,y,tip,q,n;
int Find(int a)
{
if(a==T[a])
return a;
return T[a]=Find(T[a]);
}
int Union(int a,int b)
{
a=Find(a);
b=Find(b);
T[a]=b;
}
int main()
{
fin>>n>>q;
for(int i=1;i<=n;i++)
T[i]=i;
while(q--)
{
fin>>tip;
if(tip==1)
{
fin>>x>>y;
Union(x,y);
}
else
{
fin>>x>>y;
if(Find(x)==Find(y))
fout<<"DA";
else
fout<<"NU";
fout<<'\n';
}
}
return 0;
}