今天的每日一练中,有一道“小艺改编字符串”的问题。
题目描述:
已知字符串str. 添加至少多少字符可以使得str变成回文串。
输入描述:
输入字符串s.(1<=len(str)<=100)
输出描述:
输出最小需要添加字符的数量。
示例
输入
abab
输出
1
题主报的答案是这样的:
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
void solution(char *s){
// TODO: 请在此编写代码
int length = strlen(s);
int i, j, k;
int count;
int notEqual = 0;
for (i = 0; i < length; i++) {
notEqual = 0;
for (j = i, k = length - 1; j < length && j <= k; j++, k--) {
if (s[j] != s[k]) {
notEqual = 1;
break;
}
}
if (notEqual == 0) {
printf("%d\n", i);
break;
}
}
}
int main() {
char s[1000];
scanf("%s", s);
solution(s);
return 0;
}
得到的结果是:
运行中
运行成功:
不通过
您的代码已保存。
答案错误,您提交的程序没有通过所有的测试用例。
case通过率:40.0%
我用自己的编译器试了几个实例结果都没错,请各位朋友,指点一二