题解 | #密码截取#

密码截取

http://www.nowcoder.com/practice/3cd4621963e8454594f00199f4536bb1

  1. 暴力法求解最长回文串
#include<bits/stdc++.h>

using namespace std;

int main(){
    string s;

    while(cin>>s){
        int max_ = 0, flag = 0;
        //暴力循环确定左右边界
        for(int i= 0; i< s.size();i++){
            for(int j = s.size()-1; j>i ;j--){//锚点思路
               flag = 0;
               int l,r;//动态变化的锚点。
                //判断这个段上是不是回文
               for(l= i,r = j; l<=(l+r)/2; l++,r--){
                    if(s[l]!=s[r]){
                        flag = 1;
                        break;//剪枝
                    }
                }

                //如果这段上是回文
                //那么再比这个短的就不用再看了,重新遍历下一次
                if(flag==0){
                    max_ = max(max_,j-i+1);
                    break;//不用在重复判断
                }
            }
        }

        cout<<max_<<endl;
    }

    return 0;
}
大厂笔试题题解 文章被收录于专栏

主要是公司笔试题得一些总结

全部评论

相关推荐

头像
11-18 16:08
福州大学 Java
影流之主:干10年不被裁,我就能拿别人一年的钱了,日子有盼头了
点赞 评论 收藏
分享
10-15 16:27
门头沟学院 C++
LeoMoon:建议问一下是不是你给他付钱😅😅
点赞 评论 收藏
分享
点赞 收藏 评论
分享
牛客网
牛客企业服务