回文串

来源:互联网 发布:mac机中钉钉无法登陆 编辑:程序博客网 时间:2024/05/02 00:23
题目描述

给定一个字符串,问是否能通过添加一个字母将其变为回文串。

IDEA

若果这个字符串能够通过添加一个字符变为回文,则其也可以通过删除一个字符变为回文,删除一个字符:

str.erase(i,1);

CODE

#include<iostream>#include<fstream> #include<string>using namespace std;int isPalindrome(string str){for(int i=0;i<str.length();i++){if(str[i]!=str[str.length()-1-i]){return 0;}}return 1;}int main(){#ifndef ONLINE_JUDGEfreopen("input.txt","r",stdin);#endif     string s;    while(cin>>s){    int i=0;    for(;i<s.length();i++){    string str=s;    str.erase(i,1);    //cout<<str<<endl;    if(isPalindrome(str)){    cout<<"YES"<<endl;    break;}}if(i==s.length()){cout<<"NO"<<endl;}}    return 0;}


0 0