Pagini recente » Cod sursa (job #1212199) | Cod sursa (job #986926) | Cod sursa (job #401959) | Cod sursa (job #166298) | Cod sursa (job #1932815)
#include <fstream>
#define nmax 100005
using namespace std;
ifstream fin("disjoint.in");
ofstream fout("disjoint.out");
int t[nmax],n,m;
void leaga(int noda,int nodb)
{
t[noda]+=t[nodb];
t[nodb]=noda;
}
int rad(int nod)
{
while(t[nod]>0)
nod=t[nod];
return nod;
}
int main()
{
int i,op,x,y;
fin>>n>>m;
for(i=1;i<=n;i++)
t[i]=-1;
for(;m;m--)
{
fin>>op>>x>>y;
int rx,ry;
rx=rad(x);
ry=rad(y);
if(op==1)
{
if(t[rx]<t[ry])
leaga(rx,ry);
else
leaga(ry,rx);
}
if(op==2)
{
if(rx==ry)
fout<<"DA";
else
fout<<"NU";
fout<<'\n';
}
}
return 0;
}