Pagini recente » Cod sursa (job #3144682) | Cod sursa (job #3166855) | Cod sursa (job #576336) | Cod sursa (job #2092523) | Cod sursa (job #2512523)
#include <fstream>
#define NMAX 100005
using namespace std;
ifstream f("disjoint.in");
ofstream g("disjoint.out");
int T[NMAX];
int n, m, cer, x, y;
int rad;
int opParc(int x){
if(T[x] == x)
{
rad = x;
return x;
}
int ajut = opParc(T[x]);
T[x]=ajut;
return ajut;
}
void init(){
for(int i=1; i<=n; i++)
T[i]=i;
}
int main()
{
f>>n>>m;
init();
for(int i=1; i<=m; i++){
f>>cer>>x>>y;
if(cer == 2){
if(opParc(x) == opParc(y))
g<<"DA"<<'\n';
else g<<"NU"<<'\n';
}
else {
T[opParc(y)]=opParc(x);
}
}
return 0;
}