题解 | #公共子串计算#
公共子串计算
https://www.nowcoder.com/practice/98dc82c094e043ccb7e0570e5342dd1b
// HJ75-2 公共子串计算.cpp : 此文件包含 "main" 函数。程序执行将在此处开始并结束。
#include<iostream>
#include<bits/stdc++.h>
using namespace std;
int check(string& s,string& s2)
{
int len = s.size();
for (int i = 0; i < s2.size(); i++)
{
if (s.compare(s2.substr(i, len)) == 0)
return len;
}
return 0;
}
int main()
{
string s1, s2;
while (cin >> s1 >> s2)
{
int ans = 0;
if (s1.size() > s2.size())
swap(s1, s2);
for (int i = 0; i < s1.size(); i++)
{
for (int j = i; j < s1.size(); j++)
{
string tmp = s1.substr(i, j - i+1);
int res = check(tmp,s2);
ans = max(res, ans);
}
}
cout << ans << endl;
}
return 0;
}

曼迪匹艾公司福利 136人发布