Pagini recente » Cod sursa (job #2118205) | Cod sursa (job #818070) | Cod sursa (job #1088357) | Cod sursa (job #462404) | Cod sursa (job #810377)
Cod sursa(job #810377)
#include <cstdio>
using namespace std;
const int MAX = 100001;
int n, m, a, b, c, A[MAX];
int get(int a) {
return A[a] == a ? a : (A[a] = get(A[a]));
}
void merge(int a, int b) {
A[get(a)] = get(b);
}
int main() {
freopen("disjoint.in", "r", stdin);
freopen("disjoint.out", "w", stdout);
for (int i = 0; i < MAX; i++) {
A[i] = i;
}
scanf("%d%d", &n, &m);
for (int i = 0; i < m; i++) {
scanf("%d%d%d", &a, &b, &c);
if (a == 1) {
merge(b, c);
}
if (a == 2) {
printf(get(b) == get(c) ? "DA\n" : "NU\n");
}
}
return 0;
}