题解 | #公共子串计算#
公共子串计算
https://www.nowcoder.com/practice/98dc82c094e043ccb7e0570e5342dd1b
#include <iostream> using namespace std; int main() { string a, b; while (cin >> a >> b) { // 注意 while 处理多个 case if (a.size() > b.size()) { swap(a, b); } int max = 0; for (int i = 0; i <= a.size() - 1; i++) { for (int j = i; j <= a.size() - 1; j++) { string substr = a.substr(i, j - i + 1); if (b.find(substr) != string::npos) { if (max < substr.size()) { max = substr.size(); } } } } cout << max << endl; } return 0; } // 64 位输出请用 printf("%lld")