Pagini recente » Arhiva de probleme | Profil LucianPandelica | Istoria paginii utilizator/mieii_fiorosi | Rating Mos Craciun (contreal) | Cod sursa (job #2018761)
#include <iostream>
#include <fstream>
using namespace std;
int N,M,parent[100020];
int source(int a){
if (parent[a] == a) return a;
int x = source(parent[a]);
parent[a] = x;
return x;
}
void join(int a,int b){
a = source(a);
b = source(b);
parent[a] = b;
}
int main()
{
ifstream fin("disjoint.in");
ofstream fout("disjoint.out");
fin >>N>>M;
for (int i = 1; i <= N;i++) parent[i] = i;
while(M--){
int a,b,c;
fin >>a>>b>>c;
if (a == 1) {
join(b,c);
}else {
if (source(b) == source(c)) fout <<"DA";
else fout <<"NU";
fout <<"\n";
}
}
return 0;
}