Pagini recente » Cod sursa (job #2277989) | Cod sursa (job #2348031) | Cod sursa (job #1540741) | Cod sursa (job #1214408) | Cod sursa (job #291952)
Cod sursa(job #291952)
#include<stdio.h>
#include<string.h>
long t,tt,n,a[10005],i,da;
char sir[10005];
int proc(long a[],long st,long dr)
{long i;
while(st<dr)
{if(a[st]==19&&a[dr]==9)return 0;
if(a[st]-a[dr]!=0&&a[st]-a[dr]!=1&&a[st]-a[dr]!=10&&a[st]-a[dr]!=11)return 0;
if(a[st]==a[dr]+1)a[st+1]+=10;
if(a[st]==a[dr]+10)
{i=dr;
while(a[--i]==0)a[i]=9;
--a[i];}
if(a[st]-a[dr]==11)
{a[st+1]+=10;
i=dr;
while(a[--i]==0)a[i]=9;
--a[i];}
st++;dr--;}
if(st==dr)if(a[st]%2)return 0;
if(st==dr+1)if(a[st]!=a[dr])return 0;
return 1;
}
int main()
{
freopen("invers.in","r",stdin);
freopen("invers.out","w",stdout);
scanf("%ld",&t);
for(tt=1;tt<=t;++tt)
{scanf("\n");
gets(sir);
n=strlen(sir);
for(i=1;i<=n;++i)a[i]=sir[i-1]-'0';
if(a[1]==1)if(a[n]!=1||(a[2]-a[n-1]!=0&&a[2]-a[n-1]!=1&&a[2]-a[n-1]!=10&&a[2]-a[n-1]!=11))a[2]+=10,da=proc(a,2,n);
else da=proc(a,1,n);
else da=proc(a,1,n);
if(da)printf("DA\n");
else printf("NU\n");}
return 0;
}