问题标题: 酷町堂:3833

0
0
已解决
李明阳
李明阳
初级光能
初级光能
#include<iostream>
#include<string>
using namespace std;
bool hw(string s){
    int i=0,j=s.size()-1; 
    while(i<j){  
    	if(s[i]!=s[j])  
        	return false;
    	i++;    
    	j--;   
    }
    return true;
}
int main(){
    int cnt=0;
    string s;
    getline(cin,s);
    for(int i=0;i<s.size();i++){
    	cnt++;	
    }
    if(hw(s)&&cnt%2!=0) cout<<"YES";
    else cout<<"NO";
    return 0;
}

哪错了

李明阳在2020-09-07 19:45:16追加了内容

50分


0
已采纳
朱子尘
朱子尘
初级光能
初级光能

他是判断这个数是不是奇数而不是判断有多少位。

所以要用一个变量存这个数的尾数(不能直接判断)

t=s[s.size()-1];

0
0
0
高子健
高子健
新手天翼
新手天翼

for(int i=0;i<s.size();i++){

cnt++;

}

这一段可以删掉

将判断改为

if(函数名(字符串)&&(字符串[字符串的长度()-1]-字符0)%2==1)

输出<<YES

0
包思远
包思远
新手启示者
新手启示者

应该是判断这个数的末尾的数是不是奇数

0
0
包思远
包思远
新手启示者
新手启示者

string s;

getline(cin,s);

if(hw(s)&&(int)s[s.size()-1]%2==1) cout<<"YES";

else cout<<"NO";

包思远在2020-09-07 20:29:03追加了内容

错了,

是:

string s;

getline(cin,s);

if(hw(s)&&(int)(s[s.size()-1]%2==1) cout<<"YES";

else cout<<"NO";

包思远在2020-09-07 20:33:42追加了内容

包思远在2020-09-07 20:34:45追加了内容

包思远在2020-09-07 20:35:59追加了内容

我写的函数是hws(),你用hw()

包思远在2020-09-07 20:37:17追加了内容

我要回答