Cod sursa(job #56254)

Utilizator Binary_FireFlorin Pogocsan Binary_Fire Data 29 aprilie 2007 10:39:07
Problema Invers Scor 0
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.71 kb
#include <stdio.h>
#define fin  "invers.in"
#define fout "invers.out"
#define Nmax 10001

int T,dim;
char v[Nmax];

int absf(int a) {
	if (a<0)
		a*=-1;
	return a;
}

int main() {
int i,j,good;
	freopen(fin,"r",stdin); freopen(fout,"w",stdout);

	scanf("%d",&T);

	for (;T>0;--T) {
		
		scanf("%s",&v);		
		for (dim=0;v[dim]!=(char)NULL;++dim);
		
		dim--;

		//fprintf(stderr,"%d\n",dim);

		if (v[0]=='1') 
			i=1;
		else
			i=0;

		j=dim;

		if (dim==1)
			i=0;

		for (good=1;i<j;++i,--j) {
			if (absf(v[i]-v[j])>1)
				good=0;
			//fprintf(stderr,"%d %d\n",i,j);
		}

		if (dim==0 && (v[0]-'0')%2!=0)
			good=0;

		if (good)
			printf("DA\n");
		else
			printf("NU\n");

	}	

	fclose(stdin); fclose(stdout);

	return 0;
}