Pagini recente » Cod sursa (job #838405) | Cod sursa (job #590568) | Cod sursa (job #243447) | Cod sursa (job #2534181) | Cod sursa (job #2937933)
#include<fstream>
using namespace std;
ifstream fin("disjoint.in");
ofstream fout("disjoint.out");
int *multimi;
int gaseste(int x){
if(multimi[x]==x)
return x;
return multimi[x]=gaseste(multimi[x]);
}
void uneste(int x, int y){
multimi[gaseste(x)]=gaseste(y);
}
int main(){
int n,m;
fin>>n>>m;
multimi=new int[n+1];
for(int i=1;i<=n;i++)
multimi[i]=i;
int cod,x,y;
while(fin>>cod>>x>>y){
if(cod==1)
uneste(x,y);
else{
fout<<(gaseste(x)==gaseste(y)?"DA\n":"NU\n");
}
}
return 0;
}