题解 | #最长回文子串#

最长回文子串

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

//最暴力的解法
#include <iostream>
#include <string>
#include <set>
using namespace std;

int main() {
    string strs;
    cin >> strs;

    set<string> substr;

    for (int i = 0;i < strs.size();i++)
    {
        for (int j = 0;j < strs.size();j++)
        {
            string newstr = strs.substr(i,j - i + 1);  //将字符串剪切下来
            substr.insert(newstr);   //将剪切下来的字符串保存并去重
        }
    }

    string max_substr;  //定义最长字符串
    int num = 0;        //最长字符串的长度

    for (auto it : substr)
    {
        for (int i = 0;i < it.size() / 2;i++)
        {
            if (it[i] != it[it.size() - i - 1])
            {
                break;
            }
            else 
            {
                if (i == it.size() / 2 - 1)
                {
                    if (it.size() > num)
                    {
                        max_substr = it;
                        num = it.size();
                    }
                }
            }
        }
    }

    //cout << max_substr << endl;
    cout << num << endl;
}
// 64 位输出请用 printf("%lld")

全部评论

相关推荐

霁华Tel:秋招结束了,好累。我自编了一篇对话,语言别人看不懂,我觉得有某种力量在控制我的身体,我明明觉得有些东西就在眼前,但身边的人却说啥也没有,有神秘人通过电视,手机等在暗暗的给我发信号,我有时候会突然觉得身体的某一部分不属于我了。面对不同的人或场合,我表现出不一样的自己,以至于都不知道自己到底是什么样子的人。我觉得我已经做的很好,不需要其他人的建议和批评,我有些时候难以控制的兴奋,但是呼吸都让人开心。
点赞 评论 收藏
分享
点赞 收藏 评论
分享
牛客网
牛客企业服务