Pagini recente » Cod sursa (job #43643) | Cod sursa (job #1452247) | Cod sursa (job #2833569) | Cod sursa (job #2280454) | Cod sursa (job #137232)
Cod sursa(job #137232)
#include <stdio.h>
#include <list>
using namespace std;
#define MAX 50176
int v[MAX];
list<int> a;
int adauga(int n)
{
if (a.empty())
return -1;
int t = a.front();
a.pop_front();
if (n < t)
return -1;
if (n > t)
for (int i = t + 1; i <= n; i++)
a.push_front(i);
return 0;
}
int main()
{
freopen("nivele.in", "rt", stdin);
freopen("nivele.out", "wt", stdout);
int nteste;
scanf("%d", &nteste);
for (int test = 0; test < nteste; test++)
{
int n, i;
scanf("%d", &n);
for (i = 0; i < n; i++)
scanf("%d", &v[i]);
if (!a.empty())
a.clear();
a.push_back(1);
for (i = 0; i < n; i++)
if (adauga(v[i]) != 0)
break;
if (i == n && a.empty())
printf("DA\n");
else
printf("NU\n");
}
return 0;
}