Pagini recente » Cod sursa (job #733661) | Cod sursa (job #3147110) | Cod sursa (job #658073) | Cod sursa (job #1322460) | Cod sursa (job #425806)
Cod sursa(job #425806)
// Catalin Balan
// Fri Mar 26 09:31:48 EET 2010
// PreONI 2008 - Nivele
#include <cstdio>
#include <cstdlib>
using namespace std;
#define NMAX 50005
#define CHUNK 8192
#define FIN "nivele.in"
#define FOUT "nivele.out"
char g_buf[CHUNK];
int g_p=CHUNK-1;
inline int get()
{
int x = 0;
while (g_buf[g_p] < '0' || g_buf[g_p] > '9')
if (++g_p == CHUNK) fread(g_buf,1,CHUNK,stdin), g_p=0;
while (g_buf[g_p] >= '0' && g_buf[g_p] <= '9')
{
x = x*10 + g_buf[g_p]-'0';
if (++g_p == CHUNK) fread(g_buf,1,CHUNK,stdin), g_p=0;
}
return x;
}
int S[NMAX], n, nr;
int main(int argv, char ** argc)
{
freopen(FIN, "r", stdin);
freopen(FOUT, "w", stdout);
for (int nrTests = get(); nrTests; --nrTests)
{
n = get();
S[1] = get();
nr = 1;
for (int i = 2; i <= n; ++i)
{
S[++nr] = get();
while (S[nr] == S[nr-1] && S[nr] != 1)
--S[--nr];
}
if (nr == 1 && S[1] == 1) printf("DA\n");
else printf("NU\n");
}
return EXIT_SUCCESS;
}