回文串

回文串

题目描述

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

输入描述:

一行一个由小写字母构成的字符串,字符串长度小于等于10。

输出描述:

输出答案(YESNO).
示例1

输入

coco

输出

YES

牛客网题解:

在其它地方看到一种思路:既然能通过增加一个字符变成回文串,那一定也可以通过删除一个字符变成回文串。用一个循环,每次循环依次删掉一个字符,然后检查新串是否是回文串,看起来简单方便许多。
 
1
2
3
4
5
6
7
for (int i = 0; i < strlen(s); i++) {
    strcpy(tmp, s);
    for (int j = i; j < strlen(s); j++)
         tmp[j] = tmp[j+1]; // 删掉tmp[j],把后面的向前移动
    if (tmp is 回文串)
         return true;
}
原文地址:https://www.cnblogs.com/Renyi-Fan/p/7743446.html