判断一个字符串能否通过添加一个字符变成回文串

蘑菇街笔试题目: 判断一个字符串能否通过添加一个字符变成回文串


相关概念:

回文串”是一个正读和反读都一样的字符串,比如“level”或者“noon”等等就是回文串。


回文可分为两种:偶数回文和奇数回文,偶数回文中间两个字符相同,奇数回文中间只有一个字符;


题目可以分为三种情况:

(1)原字符串即为回文串,直接在中间添加和中间字符相同的字符即可;

(2)缺少一个字符,找出缺少位置;

(2)缺少多个字符,无法通过添加一个字符改造为回文字符;


#include
#include
#include
using namespace std;

int main()
{
	char str[30];
	gets(str);
	int len=strlen(str);
	int i=0,j=len-1;
	int countdif=0;

	while(i



你可能感兴趣的:(C++机试题)