0查找最长的公共子序列 - 蓝桥云课 (lanqiao.cn)
用find和substr
#include<bits/stdc++.h>
using namespace std;
int main()
{
string s1,s2,s3;cin>>s1>>s2;
int minlen=min(s1.size(),s2.size());
int maxlen=0;
for(int i=0;i<minlen;i++) //从小的开始是为了防止越界
{
for(int j=0;j<s1.size();j++)
{
string temp=s1.substr(j,i);
if(s2.find(temp)!=string::npos)
{
int len=temp.size();
maxlen=max(maxlen,len); //最长公共子序列长度
s3=temp; //最长公共子序列
}
}
}
cout<<s3;
return 0;
}