最长公共子序列(LCS)
来源:互联网 发布:小漠淘宝店网址 编辑:程序博客网 时间:2024/05/16 01:42
#include<iostream> #include<cstdlib> #include<cstdio> #include<cmath> #include<cstring> #include<string> #include<cstdlib> #include<iomanip> #include<vector> #include<list> #include<map> #include<algorithm> typedef long long LL; using namespace std; const int maxn=100;const int N = 1000;int dp[N][N];#define max(a, b)(a>b ? a:b)int LCS(string a, string b){memset(dp, sizeof(dp), 0);for(int i=1; i<=a.length(); i++){for(int j=1; j<=b.length(); j++){if(a[i-1] == b[j-1]){dp[i][j] = dp[i-1][j-1] + 1;}else{dp[i][j] = max(dp[i-1][j], dp[i][j-1]);}}}return dp[a.length()][b.length()];}void solve(){string a, b;while( cin >> a >> b){int ret = LCS(a, b);cout << ret << endl; //输出最长公共子序列(不连续) 的长度 }}int main(){solve();return 0;}
int dp[m+1][n+1];int Lcs(){ for(int i=0;i<m;i++) for(int j=0;j<n;j++)if(s1[i]==s2[j]) dp[i+1][j+1]= dp[i][j]+1;else dp[i+1][j+1]= max(dp[i+1][j],dp[i][j+1]); return dp[m][n];}
1 0
- LCS:最长公共子序列
- LCS---最长公共子序列
- 最长公共子序列 LCS
- LCS -- 最长公共子序列
- LCS最长公共子序列
- 最长公共子序列LCS
- LCS-最长公共子序列
- 最长公共子序列 LCS
- 最长公共子序列(LCS)
- 最长公共子序列(LCS)
- 最长公共子序列LCS
- LCS最长公共子序列
- 最长公共子序列LCS
- 最长公共子序列 LCS
- LCS最长公共子序列
- 最长公共子序列(LCS)
- 最长公共子序列LCS
- 最长公共子序列LCS
- ACM: uva 11426 -&…
- java之ReentrantLock公平锁和非公平锁
- 洛谷P1156 垃圾陷阱
- Python中List二维数组
- 禁用cookie后session是如何设置的(第一个)
- 最长公共子序列(LCS)
- 一个帖子学会Android开发四大组件
- C++ 嵌套类
- SpringMVC之DispatcherServlet处理请求详解
- ZOJ1586 QS Network
- 关于StringBuffer
- QT基本操作信号与槽
- 企业人事管理系统项目拾金
- 0-1背包问题,用滚动数组,动态规划解决