公共是指a的前缀子串等于b的后缀子串
最短连续公共子序列
string a, b;
cin >> a >> b;
for(int k = 1 ; k <= min(a.size(), b.size()) ; k ++ )
{
if(a.substr(a.size() - k, k) == b.substr(0, k))
{
cout << b.substr(0, k) << endl;
break;
}
}
最长连续公共子序列
string a, b;
cin >> a >> b;
for(int k = min(a.size(), b.size()) ; k >= 1 ; k -- )
{
if(a.substr(a.size() - k, k) == b.substr(0, k))
{
cout << b.substr(0, k) << endl;
break;
}
}