Pagini recente » Cod sursa (job #2639203) | Cod sursa (job #476023) | Cod sursa (job #249338) | Cod sursa (job #862222) | Cod sursa (job #3216363)
#include <bits/stdc++.h>
using namespace std;
ifstream fin("disjoint.in");
ofstream fout("disjoint.out");
const int N=1e5+1;
int sef[N];
int sefsuprem(int x)
{
if(sef[x]==0 || sef[x]==x)
return x;
return sefsuprem(sef[x]);
}
void reuniune(int x,int y)
{
int sx,sy;
sx=sefsuprem(x);
sy=sefsuprem(y);
if(sx!=sy)
sef[sx]=sy;
}
int main()
{
int n,m,i,cod,x,y;
fin>>n>>m;
for(i=1;i<=m;i++)
{
fin>>cod>>x>>y;
if(cod==1)
{
reuniune(x,y);
}
else{
if(sefsuprem(x)==sefsuprem(y))
fout<<"DA";
else
fout<<"NU";
fout<<'\n';
}
}
return 0;
}