Pagini recente » Cod sursa (job #2850562) | Cod sursa (job #2982862) | Cod sursa (job #1499246) | Cod sursa (job #1473708) | Cod sursa (job #1080497)
#include <cstdio>
using namespace std;
int n,m;
struct nod
{
nod *u;
}*a[100000];
void init()
{
for(int i=0;i<n;++i)
{
a[i]=new nod;
a[i]->u='\0';
}
}
int main()
{
freopen("disjoint.in","r",stdin);
freopen("disjoint.out","w",stdout);
scanf("%d%d",&n,&m);
init();
int x,y,e;
nod *px,*py,*p,*p1;
while(m)
{
--m;
scanf("%d%d%d",&e,&x,&y);
--x;--y;
px=a[x];
py=a[y];
while(px->u) px=px->u;
while(py->u) py=py->u;
if(e==1) py->u=px;
else
{
p=a[x];
p1=a[x]->u;
while(p1)
{
p->u=px;
p=p1;
p1=p1->u;
}
p=a[y];
p1=a[y]->u;
while(p1)
{
p->u=py;
p=p1;
p1=p1->u;
}
if(px==py) printf("DA\n");
else printf("NU\n");
}
}
return 0;
}