问题标题: 酷町堂:1469 回文单词句式

1
0
已解决
周旭东
周旭东
初级光能
初级光能

题目描述 Description

所谓的回文,就是一个句子从左到右读和从右到左读起来是一模一样的,如汉语中的“雾锁山头山锁雾;天连水尾水连天”。在英文当中也有这样的一种句式,一个英文单词相当于一个汉字,现给出一串英文,判断是否是回文单词句式,如果是,则输出”Yes”,如果不是,则输出”No”。 如
abc def xyz def abc 反过来依然是: abc def xyz def abc 则该句子就是回文单词句式。

输入描述 Input Description

输入为一行,为需要判断的字符串句子,长度不超过1000,每个单词之间用单个空格隔开,且句子收尾没有空格。

输出描述 Output Description

输出为一行,若该句子是回文单词句式,输出:“Yes”;否则,输出“No”

样例输入 Sample Input

 

abc def xyz def abc

样例输出 Sample Output

 

Yes


1
已采纳
曹志
曹志
资深守护
资深守护
for(int i=0,j=x-1;i<=j;i++,j--)
    {
        if(a[i]!=a[j])
        {
            cout<<"No";
            return 0;
        }
    }
cout<<"Yes";

主要的代码

1
韩清阳
韩清阳
初级守护
初级守护

定义一个字符串,若该字符串的最后一位为偶数,则直接输出NO并结束程序,再判断是不是回文数,是输出YES,不是输出NO。

具体判断是否为偶数关键代码如下:

if(a[0]%2==0)
{
    cout<<"NO";
    return 0;
}

判断是否为回文数关键代码如下:

int l=a.size();
for (int i=0;i<=l/2;i++)
{
    if(a[i]!=a[l-1-i])
    {
        cout<<"NO";
        return 0;
    }
}
cout<<"YES";

 

 

1
尹宗鑫
尹宗鑫
新手守护
新手守护

定义 a[1001],b[1001];
定义 i=1,s=0,j;
    while(cin>>a[i]){
    b[i]赋值为a[i];
    i进行加一 
    }
    for(j=0;j<i/2;j++){
   交换(a[j]和a[i-j)];
    }
    for(j从1到i){
    if(a[j]!=b[j]){
    s=1; break; }
    }
    判断 输出 

0
金一铭
金一铭
新手光能
新手光能

思路:

此题要先拆单词,然后如果一个单词不等于对应它的单词,就停下,然后就能轻松判断是否为回文串了

0
我要回答