您的位置:首页 > 其它

uvaoj401

2013-05-22 19:16 393 查看
#include<stdio.h>
#include<string.h>
char b[25];
char reverseArr[40] = "A 3 HIL JM O 2TUVWXY51SE Z 8 ";

int Is_paLindrome(char *s)
{
int i;
int n = strlen(s);
for(i = 0;i <= n/2-1; i++)
{
if(s[i] != s[n-1-i])
{
return 0;
}
}
return 1;
}

int Is_mirrored(char *s)
{
int n = strlen(s);
int h;
for(h = 0; h <= n/2; h++)
{
if((s[h]>='A'&&s[h]<='Z') && reverseArr[s[h]-'A'] != s[h])
return 0;
else
if((s[h]>='1'&&s[h]<='9') && reverseArr[s[h]-'1'+26] != s[h])
return 0;
}
return 1;
}

int main()
{
while(gets(b))
{
if(Is_paLindrome(b))
{
if(!Is_mirrored(b))
printf("%s -- is a regular palindrome.\n",b);
else
printf("%s -- is a mirrored palindrome.\n",b);
}
else
{
if(!Is_mirrored(b))
printf("%s -- is not a palindrome.\n",b);
else
printf("%s -- is a mirrored string.\n",b);
}
printf("\n");
}

return 0;
}



                                            
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: