题解 | #密码截取# 没用动态规划,时间复杂度n^3
密码截取
https://www.nowcoder.com/practice/3cd4621963e8454594f00199f4536bb1
#include <stdio.h>
#include <string.h>
int main() {
int i,j,max=0,count,begin,end;
char str[2501];
scanf("%s",str);
for(i=0;i<strlen(str)-1;i++)
{
for(j=i+1;j<strlen(str);j++)
{
for(begin=i,end=j;str[begin]==str[end]&&begin<end;begin++,end--)
;
if(end-begin<=0)//关键在于此处的判断,将不符合回文结构的情况排除在外
max=max>(j-i+1)?max:(j-i+1);
}
}
printf("%d",max);
return 0;
}