Pagini recente » Cod sursa (job #878448) | Cod sursa (job #331156) | Cod sursa (job #3283657) | Cod sursa (job #3239559) | Cod sursa (job #1784185)
#include <cstdio>
using namespace std;
int n,m,x,y;
int a[100010];
void seek(int tata,int nod)
{
if(a[nod]==nod)
{
if(nod==y)
a[nod]=tata;
else return;;
}
seek(tata,a[nod]);
a[nod]=tata;
}
int main()
{
freopen("disjoint.in","r",stdin);
freopen("disjoint.out","w",stdout);
scanf("%d%d",&n,&m);
for(int i=1;i<=n;i++)
a[i]=i;
for(int t;m;m--)
{
scanf("%d%d%d",&t,&x,&y);
if(t==1)
seek(x,y);
else
{
while(a[x]!=x)x=a[x];
while(a[y]!=y)y=a[y];
if(x==y)
printf("DA\n");
else printf("NU\n");
}
}
return 0;
}