UVA 401 Palindromes
题意:判断是一串是否是回文串以及是否是镜像串、回文串都知道是什么意思,镜像串呢就是按题目所给的镜像进行转变,然后这个镜像串从后往前读和原串从前往后读是一样的、
思路:按题目要求来模拟、
PS:题目特别之处字母O和数字0是等价的、
1 #include<cmath> 2 #include<cstring> 3 #include<cstdio> 4 char s[50]={"A 3 HIL JM O 2TUVWXY51SE Z 8 "}; 5 char x[105]; 6 char y[105]; 7 int main() 8 { 9 while(scanf("%s",x)!=EOF){ 10 int len=strlen(x); 11 for(int i=0;i<len;++i) //处理、 12 if(x[i]=='0') x[i]='O'; 13 int a=1; 14 int b=1; 15 for(int i=0;i<len/2;++i) 16 if(x[i]!=x[len-i-1]) a=0; //是否回文、 17 int k=0; 18 for(int i=strlen(x)-1;i>=0;--i) //从最后往前进行镜像转变、 19 if(x[i]>='1'&&x[i]<='9') y[k++]=s[x[i]-'1'+26]; 20 else y[k++]=s[x[i]-'A']; 21 y[k]='