Cod sursa(job #150638)
Utilizator | Florin Pogocsan Binary_Fire | Data | 7 martie 2008 10:22:22 |
---|---|---|---|
Problema | Nivele | Scor | 100 |
Compilator | cpp | Status | done |
Runda | Arhiva de probleme | Marime | 0.57 kb |
#include <stdio.h>
#define fin "nivele.in"
#define fout "nivele.out"
const long Nmax = 50010;
long N,T,st[Nmax];
long vf;
int main()
{
long i,a;
freopen(fin,"r",stdin);
freopen(fout,"w",stdout);
scanf("%ld",&T);
while ( T -- )
{
scanf("%ld",&N);
vf = 0;
for ( i = 1; i <= N; ++i )
{
scanf("%ld",&a);
st[ ++vf ] = a;
while ( vf > 1 && st[ vf ] == st[ vf - 1 ] )
{
--st[ vf - 1 ];
--vf;
}
}
if ( vf == 1 && st[vf] == 1 )
printf("DA\n");
else
printf("NU\n");
}
return 0;
}