0
已解决
曹博扬
初级天翼
初级天翼
#include<iostream>
#include<string>
#include<cmath>
#include<cstdio>
#include<algorithm>
#include<cstring>
#include<sstream>
using namespace std;
string s;
bool p;
int c;
int main(){
cin>>s;
int i=0,j=s.size()-1;
for(int i=0;i<s.size();i++){
if(s[i]>='a'&&s[i]<='z')
s[i]-=32;
}
while(i<j){
if(s[i]!=s[j]&&p==false){
cout<<"N"<<" ";
p=true;
}
else
c++;
i++;
j--;
}
if(p==false)
cout<<"Y";
else{
if(s.size()%2==0)
cout<<c;
else
cout<<c+1;
}
return 0;
}
找错!!
0
已采纳
李显晨
中级启示者
中级启示者
这题要用双指标,判断函数在这:
bool Judge(string s){
int i=0,j=s.size()-1;
while(i<=j){
if(s[i]!=s[j]) return false;
i++;
j--;
cnt++;
}
return true;
}
主函数里这么写:
cin>>s;
for(int i=0;i<s.size();i++){
if(s[i]>='A'&&s[i]<='Z') s[i]+=32;
}
if(Judge(s)) cout<<"Y";
else cout<<"N"<<" "<<cnt;
自己写定义
0