Pagini recente » Cod sursa (job #208974) | Cod sursa (job #1990803) | Cod sursa (job #1543448) | Cod sursa (job #2155392) | Cod sursa (job #1773373)
#include <iostream>
#include <cstdio>
using namespace std;
FILE *f=fopen("disjoint.in","r");
int n,m,v,x,y,t[100010];
FILE *f1=fopen("disjoint.out","w");
int radacina(int x)
{
while(t[x]!=x)
x=t[x];
return x;
}
void citire( )
{
fscanf(f,"%d%d",&n,&m);
for(int i=1;i<=n;i++)
t[i]=i;
for(int i=1;i<=m;i++)
{ fscanf(f,"%d%d%d",&v,&x,&y);
if(v==1)
{
t[radacina(y)]=radacina(x);
}
else
if(v==2)
{
if(radacina(x)==radacina(y))
fprintf(f1,"DA\n");
else
fprintf(f1,"NU\n");
}
}
}
int main()
{
citire();
return 0;
}