最长连续公共字串C++
2024-01-10 16:15:55
输入两个字符串 s1,s2。输出最长连续公共子串长度和最长连续公共子串。
输入格式
一行,两个字符串 s1,s2,用空格隔开。
输出格式
第一行输出最长连续公共子串的长度,第二行输出最长连续公共子串。如果不唯一,则输出 s1中的最后一个。
数据范围
1≤|s1|,|s2|≤100 数据保证至少存在一个连续公共子串。
输入样例:
abcdefg qwercdefiok
输出样例:
4
cdef
#include<iostream>
using namespace std;
int main()
{
string a,b,res;
cin>>a>>b;
for(int len=min(a.size(),b.size());len>=0;len--)
{
for(int i=a.size()-len;i>=0;i--)
{
for(int j=b.size()-len;j>=0;j--)
{
string x=a.substr(i,len);
string y=b.substr(j,len);
if(x==y)
{
res=x;
break;
}
}
if(res.size())
break;
}
if(res.size())
break;
}
cout<<res.size()<<endl<<res;
return 0;
}
文章来源:https://blog.csdn.net/qq_46380990/article/details/135502586
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。 如若内容造成侵权/违法违规/事实不符,请联系我的编程经验分享网邮箱:veading@qq.com进行投诉反馈,一经查实,立即删除!
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。 如若内容造成侵权/违法违规/事实不符,请联系我的编程经验分享网邮箱:veading@qq.com进行投诉反馈,一经查实,立即删除!