ACM——回文

回文回文!

时间限制(普通/Java):1000MS/3000MS          运行内存限制:65536KByte
总提交:967            测试通过:338

描述

回文是一种有趣的现象。英语中单词Palindromes指顺读倒读都一样的词语,比如radar,reviver,repaper,deified,rotator。美国南卡罗来那州查尔斯顿市北部有一片沼泽地,其名字的拼法也采用了这一形式:Wassamassaw,印第安语的意思是“世界上最恶劣的地方。
现在给定一个单词,要求你判断这个单词是不是回文词。

输入

输入数据由若干行组成,每行一个单词(长度为[1,256]),仅由字母组成,没有前导或后置的非法字符,单词后紧跟换行回车符。

输出

 

对于一个单词,如果是回文词,输出“Bingle! Palindrome.”,否则,输出“Not Palindrome.”

 

样例输入

Wassamassaw
Wassamassam
reviver
aab
wwm

样例输出

Bingle! Palindrome.
Not Palindrome.
Bingle! Palindrome.
Not Palindrome.
Not Palindrome.

提示

 

对于不知道输入行数的情况,可以用以下方式处理:

char str[buffer_size];

while(gets(str))

{

    // Your Code .

}

 

#include<iostream>

#include<string>

using namespace std;

int main()

{

    string str;

    while(cin>>str)

    {

        int len=str.length();

        int i;

        for(i=0;i<len;i++)

        {

            if(str[i]!=str[len-i-1])

                if(str[i]+32!=str[len-i-1]&&str[i]-32!=str[len-i-1]){

                cout<<"Not Palindrome."<<endl;

                break;

            }

        }

        if(i==len)

            cout<<"Bingle! Palindrome."<<endl;

    }

    return 0;

}

 

你可能感兴趣的:(ACM)