Pagini recente » Cod sursa (job #6643) | Cod sursa (job #1230743) | Cod sursa (job #1581079) | Cod sursa (job #1762941) | Cod sursa (job #2538844)
#include <bits/stdc++.h>
using namespace std;
int n,v[50005],minim,maxim,cnt,t;bool ok;
int main () {
freopen("nivele.in","r",stdin);
freopen("nivele.out","w",stdout);
scanf("%d", &t);++t;
while(--t) {
scanf("%d", &n);ok=false;;maxim=-1;minim=1e9+3;
for(int i=1;i<=n;++i)
scanf("%d", &v[i]),minim=min(minim,v[i]),maxim=max(maxim,v[i]);
if(minim==1 || maxim>n || n==1) {
printf("NU\n");
continue;
}
for(int i=1;i<=n;++i) {
if(v[i]==maxim) {
cnt=1;++i;
while(i<=n && v[i]==cnt)
++cnt;
if((cnt & (cnt-1))!=0)
printf("NU\n"),ok=true;
}
}
if(ok==false)
printf("DA\n");
}
return 0;
}