Pagini recente » Cod sursa (job #1695139) | Cod sursa (job #1652558) | Cod sursa (job #1386225) | Cod sursa (job #2630533) | Cod sursa (job #1378258)
#include <iostream>
#include <fstream>
using namespace std;
ifstream f("disjoint.in");
ofstream g("disjoint.out");
int n,m,op,x,y,grupa[100009];
int maxim,minim;
int main()
{
f>>n>>m;
for(int i=1;i<=n;i++) grupa[i]=i;
while(m){
f>>op;
if(op==2){
f>>x>>y;
if(grupa[x]==grupa[y]) g<<"DA"<<'\n';
else g<<"NU"<<'\n';
}
if(op==1){
f>>x>>y;
if(grupa[x]<grupa[y]){
maxim=grupa[y];
minim=grupa[x];
} else {
maxim=grupa[x];
minim=grupa[y];
}
for(int i=1;i<=n;i++) if(grupa[i]==maxim) grupa[i]=minim;
}
m--;
}
return 0;
}