Pagini recente » Cod sursa (job #2806500) | Cod sursa (job #85475) | Cod sursa (job #2051198) | Cod sursa (job #155355) | Cod sursa (job #1384416)
#include <fstream>
using namespace std;
ifstream fin("disjoint.in");
ofstream fout("disjoint.out");
int v[100010],n,k,p,a,b,i;
void verif(int a,int b,int p)
{
int x,y,g1=0,g2=0;
x = v[a];
while(v[x] != x)
x = v[x], ++g1;
y = v[b];
while(v[y] != y)
y = v[y], ++g2;
if(p == 1){
if(g1 < g2)
v[x] = v[y];
else
v[y] = v[x];
}
else{
if(x == y)
fout<<"DA\n";
else
fout<<"NU\n";
}
}
int main()
{
fin>>n>>k;
for(i=1;i<=n;++i)
v[i] = i;
for(i=1;i<=k;++i){
fin>>p>>a>>b;
verif(a,b,p);
}
return 0;
}