#include <stdio.h>
#include <string.h>
int main()
{
bool pal, mirr;
char str[25], str1[25], strLet[] = {"A 3 HIL JM O 2TUVWXYZ"}, strNum[] = {"01SE Z 8 "};
int i, len;
while ( scanf("%s", str) != EOF )
{
len = strlen(str);
for ( i=0; i<=len/2; i++ )
{
if ( str[i] == '0' && str[len-i-1] == 'O' || str[i] == 'O' && str[len-i-1] == '0' )
continue;
else
if ( str[i] == str[len-i-1] )
pal = true;
else
{
pal = false;
break;
}
}
for ( i=0; i<=len/2; i++ )
{
if ( str[i] == '0' && str[len-i-1] == 'O' || str[i] == 'O' && str[len-i-1] == '0' )
continue;
else
{
if ( str[i] >= 'A' && str[i] <= 'Z' )
str1[i] = strLet[str[i]-'A'];
else
str1[i] = strNum[str[i]-'0'];
if ( str1[i] == str[len-i-1] )
mirr = true;
else
{
mirr = false;
break;
}
}
}
if ( pal && mirr )
printf("%s -- is a mirrored palindrome.\n\n", str);
else
if ( pal && !mirr )
printf("%s -- is a regular palindrome.\n\n", str);
else
if ( !pal && mirr)
printf("%s -- is a mirrored string.\n\n", str);
else
printf("%s -- is not a palindrome.\n\n", str);
}
return 0;
}
UVA 401 (暑假-字符串(1) -A - Palindromes)
最新推荐文章于 2021-07-17 14:57:48 发布