Pagini recente » Borderou de evaluare (job #2783306) | Cod sursa (job #341022) | Cod sursa (job #465850) | Cod sursa (job #2949788) | Cod sursa (job #1011124)
#include <cstdio>
int n,k;
const int Q=100007;
int t[Q];
int radacinare(int x)
{
if(t[x]==0)
return x;
t[x]=radacinare(t[x]);
return t[x];
}
int main()
{
freopen("disjoint.in","r",stdin);
freopen("disjoint.out","w",stdout);
scanf("%d%d",&n,&k);
int l,x,y,act;
for(int i=1; i<=k; i++)
{
scanf("%d%d%d",&l,&x,&y);
if(x>y)
{
act=x;
x=y;
y=act;
}
if(l==1)
{
act=radacinare(x);
t[y]=act;
for(int j=act+1 ; j<=y ; j++)
{
t[j]=act;
}
}
else
{
act=radacinare(y);
if(act<=x)
{
printf("DA\n");
}
else
{
printf("NU\n");
}
}
}
return 0;
}