Pagini recente » Cod sursa (job #1760406) | Cod sursa (job #1256320) | Cod sursa (job #961630) | Cod sursa (job #311318) | Cod sursa (job #946545)
Cod sursa(job #946545)
#include<stdio.h>
#define NMAX 50006
int t,n,niv;
int stare[NMAX];
int v[NMAX];
int main ()
{
int i,val;
freopen("nivele.in","r",stdin);
freopen("nivele.out","w",stdout);
scanf("%d",&t);
for( ; t; t--)
{
niv = 0;
scanf("%d",&n);
for(i = 1; i <= n; i++)
scanf("%d",&v[i]);
for(i = 1; i <= n; i++)
{
if(v[i] > n)
{
printf("NU\n");
break;
}
if(v[i] > niv)
{
for(niv = niv + 1; niv < v[i]; niv++)
stare[niv] = 0;
stare[niv] = 1;
}
else if(v[i] == niv)
{
while(niv > 0 && stare[niv] == 1)
niv--;
if(niv == 0)
{
printf("NU\n");
break;
}
stare[niv] = 1;
}
else
{
printf("NU\n");
break;
}
}
if(i == n + 1)
{
if(niv == 1 && stare[1] == 1)
printf("DA\n");
else
printf("NU\n");
}
}
return 0;
}