Pagini recente » Cod sursa (job #1130037) | Cod sursa (job #1229193) | Cod sursa (job #3245084) | Cod sursa (job #2694242) | Cod sursa (job #1849942)
#include <iostream>
#include <fstream>
using namespace std;
ifstream f("disjoint.in");
ofstream g("disjoint.out");
int n,m,tata[100005];
int drum(int xp)
{
if( tata[xp] == 0 )
return xp;
tata[xp] = drum( tata[xp] );
return tata[xp];
}
int main()
{
int q,x,y,rx,ry;
f>>n>>m;
for(int i=1 ; i <= m ; i++)
{
f>>q>>x>>y;
if( q == 1 )
{
if( tata[x] != 0 )
tata[y] = tata[x];
else
tata[y] = x;
}
if( q == 2 )
{
rx = drum(x);
ry = drum(y);
if( rx == ry )
g<<"DA"<<'\n';
else
g<<"NU"<<'\n';
}
}
return 0;
}