Pagini recente » Cod sursa (job #660691) | Cod sursa (job #2271051) | Cod sursa (job #378477) | Cod sursa (job #1755088) | Cod sursa (job #1861027)
#include <cstdio>
#define MAXN 50000
int v[MAXN], p, nr = 1;
int calc(int d, int n){
if(nr > n)
return 0;
int r;
if(v[p] > d){
nr++;
r = calc(d + 1, n);
if(r == 0)
return 0;
r = calc(d + 1, n);
if(r == 0)
return 0;
}
else if(v[p] == d){
p++;
return 1;
}
else{
return 0;
}
}
int main(){
FILE *in = fopen("nivele.in", "r");
FILE *out = fopen("nivele.out", "w");
int t, n, i;
char r;
fscanf(in, "%d", &t);
for(; t > 0; t--){
fscanf(in, "%d", &n);
for(i = 0; i < n; i++)
fscanf(in, "%d", &v[i]);
r = calc(1, n);
if(nr != n || r == 0)
fprintf(out, "NU\n");
else
fprintf(out, "DA\n");
}
fclose(in);
fclose(out);
return 0;
}