Cod sursa(job #403789)

Utilizator BooZZySandu Bogdan BooZZy Data 25 februarie 2010 12:03:00
Problema Paduri de multimi disjuncte Scor 100
Compilator cpp Status done
Runda Arhiva educationala Marime 0.41 kb
#include<stdio.h>
int v[100010],x,y,z,i,n,m;
int main()
{
	freopen("disjoint.in","r",stdin);
	freopen("disjoint.out","w",stdout);
	scanf("%d %d",&n,&m);
	for(i=1;i<=n;i++)
		v[i]=i;
	for(i=0;i<m;i++)
	{
		scanf("%d %d %d",&x,&y,&z);
			while(v[y]!=y)
				y=v[y];
			while(v[z]!=z)
				z=v[z];
		if(x==1)
			v[y]=z;
		else
		{
			if(y==z)printf("DA\n");
			else printf("NU\n");
		}
	}
	return 0;
}