Pagini recente » Cod sursa (job #625404) | Cod sursa (job #1403990) | Cod sursa (job #2857823) | Istoria paginii runda/oji2010/clasament | Cod sursa (job #542111)
Cod sursa(job #542111)
#include <cstdio>
#include <deque>
using namespace std;
#define N 100002
int t[N];
deque<int>d;
int dad(int x)
{
while (t[x]!=0)
{
d.push_back(x);
x=t[x];
}
while (!d.empty())
t[d.back()]=x,d.pop_back();
return x;
}
int main()
{
int n,i,j,k,x;
freopen("disjoint.in","r",stdin);
freopen("disjoint.out","w",stdout);
scanf("%d %d",&n,&k);
while (k--)
{
scanf("%d %d %d",&x,&i,&j);
if (x==2)
{
if (dad(i)==dad(j)) printf("DA\n"); else
printf("NU\n");
} else
t[dad(j)]=dad(i);
}
return 0;
}