【编程题】最长公共连续子串
来源:互联网 发布:ubuntu设置用户根目录 编辑:程序博客网 时间:2024/05/18 01:44
牛牛有两个字符串(可能包含空格),牛牛想找出其中最长的公共连续子串,希望你能帮助他,并输出其长度。
输入描述:
输入为两行字符串(可能包含空格),长度均小于等于50.
输出描述:
输出为一个整数,表示最长公共连续子串的长度。
输入例子:
abcdeabgde
输出例子:
2
#include <iostream>#include <string.h>#include <vector>using namespace std;int main(){ string str1; string str2; getline(cin,str1); getline(cin,str2); int len1 = str1.size(); int len2 = str2.size(); if(len1<1 || len2<1) { cout<<0<<endl; return 0; } vector<vector<int>> dp(len1,vector<int>(len2,0)); for(int ii = 0;ii<len2;++ii) { if(str1[0] ==str2[ii]) dp[0][ii] = 1; } for(int jj = 0;jj<len1;++jj) { if(str1[jj] ==str2[0]) dp[jj][0] = 1; } for(int ii = 1;ii<len1;++ii) { for(int jj = 1;jj<len2;++jj) { if(str1[ii] ==str2[jj]) dp[ii][jj] = dp[ii-1][jj-1]+1; } } int longest = 0; for(int ii = 0;ii<len1;++ii) { for(int jj = 0;jj<len2;++jj) { if(dp[ii][jj] >longest) longest = dp[ii][jj]; } } cout<<longest<<endl;}
阅读全文
0 0
- [编程题] 最长公共连续子串
- 【编程题】最长公共连续子串
- 最长公共连续子串
- 最长公共连续子串
- 最长连续公共子串
- 求两字符串最长公共连续子串---C++编程
- 常见编程——最长公共子序列(不连续)和最长公共子串(连续)
- [编程题]最长公共子串
- 经典笔试题 最长公共子串(连续)问题
- 最长连续公共子串算法
- 最长连续公共子串算法
- 最长公共子串(连续)问题
- 最长公共子串(连续)问题
- 最长公共子串(连续)算法
- 最长公共子串要求连续
- 最长公共子串(连续)问题
- 最长公共子串(连续)问题
- 最长公共子串(连续)问题
- 二叉树遍历
- 那些我正在使用的 Chrome 插件
- codeforces616C The Labyrinth
- JAVA中的结构体排序(基础向)
- Maven中央仓库信息速查
- 【编程题】最长公共连续子串
- 通信系统仿真速成第2天:QPSK调制与解调(实验)
- 相似度计算的三种方式
- org.framework can't be resolved
- 【GCC】gcc编译参数之-fno-strict-aliasing
- 头像滑动,中间放大并带点击选中效果
- scikit-learn 交叉验证绘图及原理实践 分类:机器学习Sklearn
- mybatis入门基础(七)----延迟加载
- LINUX 指令大全(自用版)