Pagini recente » Cod sursa (job #2624751) | Cod sursa (job #2698076) | Cod sursa (job #1830840) | Cod sursa (job #2570007) | Cod sursa (job #168515)
Cod sursa(job #168515)
#include<cstdio>
#include<cstring>
int n,st,dr,t,i;
char a[10001];
int main()
{
freopen("invers.in","r",stdin);
freopen("invers.out","w",stdout);
scanf("%d ",&t);
for(;t;t--){
gets(a);
n=strlen(a);
for(i=0;i<n;i++)
a[i]-='0';
if(n==1){
if(a[0]%2==0) printf("DA\n");
else printf("NU\n");
continue;}
st=0;dr=n-1;
while(st<dr)
if(a[st]>18 || a[dr]>18) break;
else
if(a[st]==a[dr]) st++,dr--;
else
if(a[st]-10==a[dr]) {st++;dr--;a[dr]--;}
else
if(a[st]-1==a[dr]) {st++;dr--;a[st]+=10;}
else
if(a[st]-11==a[dr]){st++;dr--;a[st]+=10;a[dr]--;}
else break;
if(st==dr)
if(a[st]%2) goto v2;
else printf("DA\n");
else
if(a[st]==a[dr] || a[st]-11==a[dr])
printf("DA\n");
else
v2:
if(a[0]!=1) printf("NU\n");
else{
st=1;dr=n-1;a[st]+=10;
while(st<dr)
if(a[st]>18 || a[dr]>18) break;
else
if(a[st]==a[dr]) st++,dr--;
else
if(a[st]-10==a[dr]) {st++;dr--;a[dr]--;}
else
if(a[st]-1==a[dr]) {st++;dr--;a[st]+=10;}
else
if(a[st]-11==a[dr]){st++;dr--;a[st]+=10;a[dr]--;}
else break;
if(st==dr)
if(a[st]%2) printf("NU\n");
else printf("DA\n");
else
if(a[st]==a[dr] || a[st]-11==a[dr])
printf("DA\n");
else printf("NU\n");}
}
fclose(stdout);
return 0;
}