题解 | #公共子串计算#

公共子串计算

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

#include <iostream>
#include <string>
using namespace std;

int main()
{
    string str1, str2;
    cin >> str1 >> str2;
    string tmp;
    int size1 = str1.size();
    int size2 = str2.size();
    //int num = 1;
    //大中找小
    if(size1 >= size2)
    {
        //所有大小
        for(int i = size2; i>0; i--)
        {
            //所有位置
            for(int j = 0; j<size2-i+1; j++)
            {
                string substr = str2.substr(j,i);
                if(str1.find(substr) != str1.npos)
                {
                    cout<<i<<endl;
                    return 0;
                }
            }

        }
    }
    else
    {
        //所有大小
        for(int i = size1; i>0; i--)
        {
            //所有位置
            for(int j = 0; j<size1-i+1; j++)
            {
                string substr = str1.substr(j,i);
                if(str2.find(substr) != str2.npos)
                {
                    cout<<i<<endl;
                    return 0;
                }
            }

        }
    }
    //return
    return 0;
}
全部评论

相关推荐

08-21 16:35
已编辑
门头沟学院 Java
点赞 评论 收藏
分享
09-21 21:14
门头沟学院
否极泰来来来来:和他说:这里不好骂你,我们加个微信聊
点赞 评论 收藏
分享
评论
5
1
分享

创作者周榜

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