Pagini recente » Cod sursa (job #1328184) | Cod sursa (job #409282) | Cod sursa (job #3239507) | Cod sursa (job #1168542) | Cod sursa (job #1695229)
#include<iostream>
#include<fstream>
#define DX 100010
using namespace std;
fstream fin("disjoint.in",ios::in),fout("disjoint.out",ios::out);
int p[DX],n,m,radacina;
int parcurge(int x)
{
if(p[x]!=x)
return p[x]=parcurge(p[x]);
else
return x;
}
int main()
{
int a,b,t,i,j,unu,doi;
fin>>n>>m;
for(i=1;i<=n;i++) p[i]=i;
for(i=1;i<=m;i++)
{
fin>>t>>a>>b;
if(t==1)
{
unu=parcurge(a);
doi=parcurge(b);
p[unu]=doi;
}
else
{
unu=parcurge(a);
doi=parcurge(b);
if(unu==doi)
fout<<"DA\n";
else
fout<<"NU\n";
}
}
}