Pagini recente » Cod sursa (job #2036231) | Cod sursa (job #1330811) | Cod sursa (job #1776575) | Autentificare | Cod sursa (job #3339836)
#include <iostream>
#include <cstring>
#include <fstream>
#include <vector>
#include <queue>
using namespace std;
string nume = "disjoint";
ifstream in(nume + ".in");
ofstream out(nume + ".out");
const int NMAX = 100001;
int par[NMAX];
void unite(int x, int y) {
if (par[x] != par[y]) par[x] = par[y];
}
void unionFind(int x, int y) {
if (par[x] == par[y]) out << "DA\n";
else out << "NU\n";
}
int main() {
int n, m;
in >> n >> m;
for (int i = 1; i <= n; i++) par[i] = i;
int a, b, c;
while (m--) {
in >> a >> b >> c;
if (a == 1) unite(b, c);
else unionFind(b, c);
}
return 0;
}