题解 | #最长回文子串#

最长回文子串

https://www.nowcoder.com/practice/12e081cd10ee4794a2bd70c7d68f5507

#include<stdio.h>
#include<string.h>
int main(){
    char str1[350],str2[350];
    scanf("%s",str1);
    int max=0;
    for(int i=0;i<strlen(str1)-1;i++){//此处i是左端点
        for(int j=i+1;j<strlen(str1);j++){
            int l=i,r=j;
            while(l<r){
                if(str1[r]!=str1[l])break;
                else{l++;r--;}
            }
            if(l>=r){
                max=(max>(j-i+1))?max:(j-i+1);
            }
        }
    }
    printf("%d",max);
}

#华为OD机考#
全部评论
是 理解 为 l r 改变后,分别对应的 i j的值 吗
点赞 回复 分享
发布于 2023-05-11 18:35 陕西
我没理解 i j的指向
点赞 回复 分享
发布于 2023-05-11 18:30 陕西
有大佬能解释一下 这一句怎么理解 吗 if(l>=r){ max=(max>(j-i+1))?max:(j-i+1); }
点赞 回复 分享
发布于 2023-05-11 18:29 陕西

相关推荐

评论
12
2
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务