Cod sursa(job #146847)
Utilizator | Data | 2 martie 2008 11:50:38 | |
---|---|---|---|
Problema | Nivele | Scor | 100 |
Compilator | cpp | Status | done |
Runda | Arhiva de probleme | Marime | 0.53 kb |
#include <stdio.h>
#define NMAX 50001
int n, T, q[NMAX];
int main()
{
int i, x, dr = 1, t;
freopen("nivele.in", "r", stdin);
freopen("nivele.out", "w", stdout);
scanf("%d", &T);
for ( t = 1; t <= T; t++)
{
dr = 0;
scanf("%d", &n);
for ( i = 1; i <= n; i++)
{
scanf("%d", &x);
++dr;
q[dr] = x;
while ( q[dr] == q[dr -1] && dr >= 1)
{
dr--;
q[dr] = q[dr] - 1;
}
}
if ( dr == 1 && q[1] == 1)
printf("DA\n");
else
printf("NU\n");
}
return 0;
}