UVa 401:Palindromes

来源:互联网 发布:网络杀毒软件有哪些 编辑:程序博客网 时间:2024/06/05 02:39
#include <stdio.h>#include <string.h>#include <ctype.h>char* rev = "A   3  HIL JM O   2TUVWXY51SE Z  8 ";char* ans[] = {"not a palindrome.", "a regular palindrome.", "a mirrored string.", "a mirrored palindrome."};char mirror(char c){    if(isalpha(c)) return rev[c-'A'];    return rev[c-'0'+25];}int main(){    char s[25];    while(1 == scanf("%s", s))    {        int i, j, p = 1, m = 1;        for(i = 0, j = strlen(s) - 1; i <= j; ++i, --j)        {            if(s[i] != s[j]) p = 0;            if(mirror(s[i]) != s[j]) m = 0;        }        printf("%s -- is %s\n\n", s, ans[m*2+p]);    }    return 0;}
0 0