Pagini recente » Cod sursa (job #1842024) | Cod sursa (job #2414518) | Cod sursa (job #792536) | Cod sursa (job #1081332) | Cod sursa (job #3237553)
#include <bits/stdc++.h>
using namespace std;
ifstream fin( "disjoint.in" );
ofstream fout( "disjoint.out" );
const int DIM = 1e5 + 1;
int fth[DIM];
int root( int u ) {
if ( fth[u] == u ) return u;
return fth[u] = root(fth[u]);
}
void join( int u, int v ) {
fth[root(u)] = root(v);
}
int main() {
ios_base::sync_with_stdio(0);
fin.tie(0);
int n, q, tp, u, v;
fin >> n >> q;
for ( int i = 1; i <= n; ++i ) {
fth[i] = i;
}
while ( q-- ) {
fin >> tp >> u >> v;
if ( tp == 1 ) {
join(u, v);
} else {
fout << (root(u) == root(v) ? "DA\n" : "NU\n");
}
}
fin.close();
fout.close();
return 0;
}