Pagini recente » Cod sursa (job #1675128) | Cod sursa (job #3208179) | Monitorul de evaluare | Cod sursa (job #668780) | Cod sursa (job #2026496)
#include <cstdio>
using namespace std;
int v[100005];
int father(int x)
{
while( v[ x ] != v[ v[ x ] ] )
v[ x ] = v[ v[ x ] ];
return v[ x ];
}
int main()
{
freopen("disjoint.in","r",stdin);
freopen("disjoint.out","w",stdout);
int n,m,a,b,a1,b1;
int ch;
scanf("%d%d",&n,&m);
for(int i=1; i<=m; ++i)
{
scanf("%d",&ch);
scanf("%d%d",&a,&b);
a1=father(a);
b1=father(b);
n[a]=a1;
n[b]=b1;
if(ch==2)
{
if(a1==b1)
printf("DA");
else
printf("NU");
printf("\n");
}
else
{
if(a1!=b1)
v[a1]=b1;
}
}
return 0;
}