Pagini recente » Cod sursa (job #2671430) | Cod sursa (job #2794417) | Cod sursa (job #1651949) | Cod sursa (job #459746) | Cod sursa (job #1617468)
#include <stdio.h>
unsigned n,m,i,t[100001],c,x,y;
unsigned rad(unsigned x)
{
if(t[x]==0)
return x;
t[x]=rad(t[x]);
return t[x];
}
void reuniune(unsigned x, unsigned y)
{
int rx,ry;
rx=rad(x);
ry=rad(y);
t[rx]=ry;
}
int main()
{
FILE *f1,*f2;
f1=fopen("disjoint.in","r");
f2=fopen("disjoint.out","w");
fscanf(f1,"%u%u",&n,&m);
for(i=0;i<m;i++)
{
fscanf(f1,"%u%u%u",&c,&x,&y);
if(c==1)
reuniune(x,y);
else
{
if(rad(x)==rad(y))
fprintf(f2,"DA\n");
else
fprintf(f2,"NU\n");
}
}
return 0;
}