Pagini recente » Cod sursa (job #2728032) | Cod sursa (job #1884332) | Cod sursa (job #2051541) | Cod sursa (job #2569735) | Cod sursa (job #2721670)
#include <fstream>
#define mF "disjoint"
std::ifstream in(mF ".in");
std::ofstream out(mF ".out");
constexpr int N = 100000; int V[N];
int R(int e) {if (0 <= V[e]) return V[e] = R(V[e]); return e;}
#include <algorithm>
int main()
{
int n, m; in >> n >> m; std::fill(V, V + n, -1); while (m--)
{
int o, a, b; in >> o >> a >> b; a = R(a-1); b = R(b-1);
if (o == 1) {if (V[a] < V[b]) std::swap(a, b); V[b] += V[a]; V[a] = b;}
else out << (a == b? "DA": "NU") << '\n';
}
}