Pagini recente » Cod sursa (job #2188236) | Cod sursa (job #1968203) | Cod sursa (job #303879) | Cod sursa (job #1672494) | Cod sursa (job #1392413)
#include<fstream>
#include<cstring>
using namespace std;
ifstream fin("disjoint.in");
ofstream fout("disjoint.out");
int t[100005],ra,rb,i,op,a,b,n,m;
int rad(int x){
while(t[x]>0){
x=t[x];
}
return x;
}
int main(){
fin>>n>>m;
memset(t,-1,sizeof(t));
for(i=1;i<=m;i++){
fin>>op>>a>>b;
ra=rad(a);
rb=rad(b);
if(op==2){
if(ra==rb){
fout<<"DA\n";
}
if(ra!=rb){
fout<<"NU\n";
}
}else{
if(t[ra]<t[rb]){
t[ra]+=t[rb];
t[rb]=ra;
}else{
t[rb]+=t[ra];
t[ra]=rb;
}
}
}
return 0;
}