Codeforces 798A. A. Mike and palindrome
原题链接
简单
作者:
蓬蒿人
,
2022-04-04 23:53:17
,
所有人可见
,
阅读 242
#include <iostream>
#include <cstring>
#include <algorithm>
#include <cmath>
using namespace std;
//798A
//题目大意
//给定一个字符串s 请判断能否在只改变一个字符的情况下变成回文字符串
/*----------------------------解题思路--------------------------*/
//一个元素u存不同的字符对数 根据字符串的奇偶性进行判断是否可变
//奇数时u<=1 偶数时u==1
int main(){
char s[110];
scanf("%s", s);
int n=strlen(s);
int u=0;
for (int i=n/2-1;i>=0;i--){
if (s[i]!=s[n-i-1]) u++;
}
int p;
if (n%2){
p=u<=1?1:0;
}
else {
p=u==1?1:0;
}
printf ("%s\n",p?"YES":"NO");
return 0;
}