最长公共子序列问题
来源:互联网 发布:公务员面试报网络班 编辑:程序博客网 时间:2024/06/07 07:35
Problem Description
给定两个序列X=
Input
输入数据有多组,每组有两行 ,每行为一个长度不超过500的字符串(输入全是大写英文字母(A,Z)),表示序列X和Y。
Output
每组输出一行,表示所求得的最长公共子序列的长度,若不存在公共子序列,则输出0。
Example Input
ABCBDAB
BDCABA
Example Output
4
#include <iostream> #include<algorithm>#include<cstring>#include<string>using namespace std;int dp[550][550];//放在main函数外面,否则会溢出int main() { string x, y; while (cin >> x >> y) { memset(dp, 0, sizeof(dp)); int len1 = x.size(); int len2 = y.size(); for (int i = 1; i <= len1; i++) for (int j = 1; j <= len2; j++) { if (x[i - 1] == y[j - 1]) dp[i][j] = dp[i - 1][j - 1] + 1; else dp[i][j] = max(dp[i - 1][j], dp[i][j - 1]); } cout << dp[len1][len2] << endl; } return 0;}
阅读全文
0 0
- 最长公共子序列问题
- 最长公共子序列问题
- 最长公共子序列问题
- 最长公共子序列问题
- 最长公共子序列问题
- 最长公共子序列问题
- 最长公共子序列问题
- 最长公共子序列问题
- 最长公共子序列问题
- 最长公共子序列问题
- 最长公共子序列问题
- 最长公共子序列问题
- 最长公共子序列问题
- 最长公共子序列问题
- 最长公共子序列问题
- 最长公共子序列问题
- 最长公共子序列问题
- 最长公共子序列问题
- PAT 乙级 1065单身狗(25) 情人节做这题真的是太合适了~
- 虚拟币开发专题(第一代山寨币系统收费机制是怎样的)
- PAT 乙级 1048 数字加密(20)
- PAT 乙级 1060 爱丁顿数(25)
- 理解RESTful架构
- 最长公共子序列问题
- STL:大小写字母转换、字符转数字、char*转string(未完待续)
- 条件编译#if
- 2016-2017 ACM-ICPC CHINA-Final (慢慢做慢慢更新)
- 网络篇一---网络基础
- c/c++易错知识点整理1(c/c++程序基础)
- CCPC 2016-2017, Finals (慢慢做,慢慢更新)
- 第三周
- c++ map