Pagini recente » Cod sursa (job #3195508) | Cod sursa (job #1823380) | Cod sursa (job #488887) | Cod sursa (job #13934) | Cod sursa (job #903001)
Cod sursa(job #903001)
#include <fstream>
using namespace std;
ifstream in("disjoint.in");
ofstream out("disjoint.out");
int a[100001],e,f,i,l,x,y,h,n,m,b[100001];
int tata(int c)
{
int j,aux;
if(c==a[c]) j=c;
else j=tata(a[c]);
while (c!=j)
{
aux=a[c];
a[c]=j;
c=aux;
}
return j;
}
int main()
{
in>>n>>m;
for(i=1;i<=n;i++)
{
a[i]=i;
//b[i]=1;
}
for(l=1;l<=m;l++)
{
in>>h>>x>>y;
e=tata(x);
f=tata(y);
if(h==1&&e!=f) a[f]=e;
if(h==2)
{
if(e==f) out<<"DA\n";
else out<<"NU\n";
}
}
return 0;
}