ToB企服应用市场:ToB评测及商务社交产业平台
标题:
删除最少的字符个数,使其成为回文,问长度最大的是多少。
[打印本页]
作者:
笑看天下无敌手
时间:
2024-6-11 17:35
标题:
删除最少的字符个数,使其成为回文,问长度最大的是多少。
删除最少的字符个数,使其成为回文,问长度最大的是多少。
#include <stdio.h>
#include <string.h>
int isHuiWen(char* s) {
int left = 0;
int right = strlen(s) - 1;
while (left < right) {
if (s[left] != s[right])
return 0;
left++;
right--;
}
return 1;
}
int max = 0;
int len(char* s, int n) {
if (!isHuiWen(s)) {
int i, j;
for (i = 0; i < n; i++) {
char temp = s[i]; // 备份当前字符
for (j = i; j < n - 1; j++)
s[j] = s[j + 1]; // 移除当前字符
s[n - 1] = '\0'; // 在字符串末尾添加空字符
int res = len(s, n - 1); // 递归调用
if (max < res)
max = res;
s[n - 1] = temp; // 恢复当前字符
if (isHuiWen(s)) {
break;
}
}
return max;
}
return n; // 如果是回文,返回字符串长度
}
int main() {
char s[] = "acbdcaa";
int n=strlen(s);
printf("%d\n", len(s,n));
return 0;
}
复制代码
免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。
欢迎光临 ToB企服应用市场:ToB评测及商务社交产业平台 (https://dis.qidao123.com/)
Powered by Discuz! X3.4