自己写的。C语言。两层遍历。题解 | #最长回文子串#
最长回文子串
https://www.nowcoder.com/practice/12e081cd10ee4794a2bd70c7d68f5507
#include<stdio.h>
int main() {
char line[500];
int n = 0, i = 0, j = 0, l = 0, r = 0, MaxLen = 0;
scanf("%s", line);
while (line[i] != '\0') {
i++;
}
n = i;
for (i = 0; i < n; i++) {
for (j = n - 1; j >= i; j--) {
l = i;
r = j;
while (l <= r) {
if (line[l] != line[r]) {
break;
}
l++;
r--;
}
if (r < l) {
if (j - i + 1 > MaxLen) {
MaxLen = j - i + 1;
}
}
}
}
printf("%d\n", MaxLen);
return 0;
}