Pagini recente » Cod sursa (job #2822480) | Cod sursa (job #915760) | Cod sursa (job #1825456) | Cod sursa (job #2915805) | Cod sursa (job #2947300)
#include <iostream>
#include <fstream>
#include <vector>
using namespace std;
ifstream f("disjoint.in");
ofstream g("disjoint.out");
int n, m, x, y, cod, fx, fy;
vector<int> par;
// gaseste tatal unui nod
int find(int x) {
if(x != par[x]) {
return par[x] = find(par[x]);
}
return x;
}
int main() {
f >> n >> m;
// initalizam tatal unui nod sa fie el insusi
par.resize(n + 1);
for(int i = 0; i < n; i++)
par[i] = i;
for(int i = 1; i <= m; i++) {
f >> cod >> x >> y;
if(cod == 1) {
par[find(y)] = find(x);
} else {
if(find(x) == find(y))
g << "DA" << endl;
else
g << "NU" << endl;
}
}
}