Pagini recente » Cod sursa (job #206780) | Cod sursa (job #2394151) | Cod sursa (job #1526529) | Cod sursa (job #850749) | Cod sursa (job #2304299)
#include <fstream>
using namespace std;
ifstream fin("disjoint.in");
ofstream fout("disjoint.out");
int n,m, t[100005],x, y,rx,ry,q,i;
int rad(int nod){
while(t[x] > 0)
nod = t[nod];
return nod;
}
int main(){
fin>>n>>m;
for(i=1;i<=n;i++)
t[i] = -1;
while(m--){
fin>>q>>x>>y;
rx=rad(x);
ry=rad(y);
if(q==1 && rx!=ry){
if(t[rx]<t[ry]){
t[rx]+=t[ry];
t[ry]=rx;
}
else{
t[ry]+=t[rx];
t[rx]=ry;
}
}
if(q==2){
if(rx==ry)
fout<<"DA\n";
else
fout<<"NU\n";
}
}
return 0;
}