Pagini recente » Cod sursa (job #580551) | Cod sursa (job #498809) | Cod sursa (job #3226842) | Cod sursa (job #167264) | Cod sursa (job #779334)
Cod sursa(job #779334)
#include<iostream>
#include<fstream>
using namespace std;
ifstream f ("disjoint.in");
ofstream g ("disjoint.out");
int i,n,m, oper,x,y,radx,rady,rad[100000];
int functie ( int p )
{
while ( rad[p]!=p )
p=rad[p];
return p;
}
int main ()
{
f>>n>>m;
for ( i=1; i<=n; i++ )
rad[i]=i;
for ( i=1; i<=m; i++ )
{
f>>oper>>x>>y;
if ( oper==1 )
{
radx=functie(x);
rady=functie(y);
if ( radx<rady )
rad[y]=x;
else
rad[x]=y;
}
else
{
if ( functie(x)==functie(y) )
g<<"DA"<<'\n';
else
g<<"NU"<<'\n';
}
}
return 0;
}