Pagini recente » Cod sursa (job #398602) | Cod sursa (job #1368502) | Cod sursa (job #1523509) | Cod sursa (job #2250391) | Cod sursa (job #1789370)
#include<stdio.h>
#define MAXN 100001
int id[MAXN];
int v[MAXN];
int reprez(int x)
{
if(id[x]==x)
{
return x;
}
return id[x]=reprez(id[id[x]]);
}
int main()
{
FILE*fin=fopen("disjoint.in","r");
FILE*fout=fopen("disjoint.out","w");
int N,M;
fscanf(fin,"%d%d",&N,&M);
for(int i=1;i<=N;i++)
{
v[i]=i;
id[v[i]]=v[i];
}
for(int i=1;i<=M;i++)
{
int cod,x,y;
fscanf(fin,"%d%d%d",&cod,&x,&y);
switch(cod)
{
case 1:
id[x]=reprez(y);
break;
case 2:
fprintf(fout,"%s\n",id[x]==id[y]?"DA":"NU");
}
}
}