Pagini recente » Cod sursa (job #458818) | Cod sursa (job #1505143) | Cod sursa (job #1471066) | Cod sursa (job #841796) | Cod sursa (job #3195881)
#include <iostream>
#include <fstream>
#include <vector>
using namespace std;
ifstream fin("disjoint.in");
ofstream fout("disjoint.out");
vector <int> l[101];
int n,m;
int tata[101];
void init0(){
for(int i=1;i<=n;i++)
tata[i]=-1;
}
int find(int node){
if(tata[node]==-1)
return node;
int root=find(tata[node]);
tata[node]=root;
return root;
}
int main() {
cin>>n>>m;
int x,y,z;
for(int i=1;i<=m;i++){
cin>>x>>y>>z;
if(x==1){
if(find(y)!=find(z)){
if(find(y)<find(z))
swap(y,z);
tata[z]+=tata[y];
tata[y]=z;
}
}
else{
if(find(y)==find(z))
cout<<"DA";
else
cout<<"NU";
cout<<endl;
}
}
return 0;
}