Pagini recente » Cod sursa (job #1795568) | Cod sursa (job #1401482) | Cod sursa (job #1329974) | Cod sursa (job #2124543) | Cod sursa (job #1697629)
#include<iostream>
#include<fstream>
#define DX 100010
using namespace std;
fstream fin("disjoint.in",ios::in),fout("disjoint.out",ios::out);
int n,m,tata[DX];
int tatic(int x)
{
if(tata[x]!=x) return tata[x]=tatic(tata[x]);
return x;
}
int main()
{
int i,t,t1,t2,a,b;
fin>>n>>m;
for(i=1;i<=n;i++) tata[i]=i;
for(i=1;i<=m;i++)
{
fin>>t>>a>>b;
if(t==1)
{
t1=tatic(a);
t2=tatic(b);
tata[t1]=t2;
}
else
{
t1=tatic(a);
t2=tatic(b);
if(t1!=t2)
{
cout<<"NU\n";
}
else
{
cout<<"DA\n";
}
}
}
}