Pagini recente » Cod sursa (job #1019970) | Cod sursa (job #2052860) | Cod sursa (job #278972) | Cod sursa (job #2934568) | Cod sursa (job #2841623)
#include <bits/stdc++.h>
using namespace std;
vector<int> parinte;
int radacina(int nod){
if (nod != parinte[nod])
parinte[nod] = radacina(parinte[nod]);
return parinte[nod];
}
int main(){
ifstream f("disjoint.in");
ofstream g("disjoint.out");
int n, m, optiune, x, y;
f >> n >> m;
for (int i = 0; i < n; i++){
parinte.push_back(i);
}
for (int i = 0; i < m; i++){
f >> optiune >> x >> y;
if (optiune == 1){
parinte[radacina(x - 1)] = radacina(y - 1);
}
else{
if (radacina(x - 1) == radacina(y - 1)){
g << "DA\n";
}
else{
g << "NU\n";
}
}
}
return 0;
}