#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;
}
UVa 401:Palindromes
最新推荐文章于 2022-08-21 17:52:04 发布