解题思路:





注意事项:





参考代码:

#include <iostream>
#include <string>
using namespace std;

int max_match(string s1, string s2)
{
   int len1 = s1.length(),
       len2 = s2.length();//两个字符串的长度
   int l = 0, k = 0;//替代变量
   int sum = 0;//匹配数目
   int max = 0;//配皮最大值
   for (int i = 0; i < len1; ++i)
   {
       for (int j = len2-1; j >= 0; --j)
       {
           k = i;
           l = j;
           sum = 0;
           while(s1[k] == s2[l] && k < len1 && l < len2)
           {
               ++sum;
               ++k;
               ++l;
           }
           if (sum > max)
           {
               max = sum;
           }
       }
   }
   return max;
}

int main()
{
    string s1,s2;
    cin >> s1 >> s2;
    cout << max_match(s1,s2) <<endl;
}


点赞(2)
 

0.0分

1 人评分

C语言网提供由在职研发工程师或ACM蓝桥杯竞赛优秀选手录制的视频教程,并配有习题和答疑,点击了解:

一点编程也不会写的:零基础C语言学练课程

解决困扰你多年的C语言疑难杂症特性的C语言进阶课程

从零到写出一个爬虫的Python编程课程

只会语法写不出代码?手把手带你写100个编程真题的编程百练课程

信息学奥赛或C++选手的 必学C++课程

蓝桥杯ACM、信息学奥赛的必学课程:算法竞赛课入门课程

手把手讲解近五年真题的蓝桥杯辅导课程

评论列表 共有 0 条评论

暂无评论