Pagini recente » Cod sursa (job #2026981) | Cod sursa (job #2072967) | Cod sursa (job #852168) | Cod sursa (job #1775754) | Cod sursa (job #1684217)
#include <iostream>
#include <fstream>
#define MAX 100003
using namespace std;
ifstream in("disjoint.in");
ofstream out("disjoint.out");
int T[MAX];
int H[MAX];
int father(int x) {
while(T[x] != x)
x = T[x];
return x;
}
void un(int x, int y) {
int fath1 = father(x);
int fath2 = father(y);
T[fath2] = fath1;
}
int main() {
int n,m,t,x,y;
in >> n >> m;
for(int i = 1; i <= n; i++)
T[i] = i;
for(int i = 1; i <= m; i++) {
in >> t >> x >> y;
if(t == 1) {
un(x, y);
} else {
if(father(x) == father(y)) {
out << "DA" << '\n';
} else {
out << "NU" << '\n';
}
}
}
return 0;
}