题解 | #公共子串计算#

公共子串计算

http://www.nowcoder.com/practice/98dc82c094e043ccb7e0570e5342dd1b

暴力解;有兴取的可以尝试用KMP算法尝试。参考大佬的博客链接

#include <iostream>
using namespace std;

int maxSubstr(string str1, string str2){
    int start_1 = 0;  int start_2 = 0;
    int count = 0; int max = 0;
    for(int i = 0; i < str1.length(); i++){
        for(int j = 0; j < str2.length(); j++){
            start_1 = i; start_2 = j;
            while(str1[start_1] == str2[start_2] && start_1 < str1.length()
                 && str2.length()){
                start_1 ++;   start_2 ++;
                count++;
            }
            if(count > max) max = count;
            count = 0;
        }
    }
    return max;
}

int main(){
    string str1, str2;
    cin >> str1 >> str2;
    cout << maxSubstr(str1, str2) << endl;
    return 0;
}
全部评论

相关推荐

09-01 11:31
门头沟学院 Java
buul:七牛云的吧,感觉想法是好的,但是大家没那么多时间弄他这个啊。。。不知道的还以为他是顶尖大厂呢还搞比赛抢hc,只能说应试者的痛苦考察方是无法理解的,他们只会想一出是一出
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

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