您的位置:首页 > 产品设计 > UI/UE

zoj 1733 Common Subsequence

2012-04-01 10:43 357 查看
/*
abcfbc abfcab
programming contest
abcd mnp
abcdefgh abdcdaef
aaaaaabbbbbbccccccdddddd adabcd
aaaaaabbbbbbccccccdddddd adaaabbccdd
*/

//这题主要是从一个字符串中找出另一个字符串中最长的字串!要求在这个字符串中的下标序号为递增顺序!
//用动态规划来做就简单啦!
#include "iostream"
#include "string"
#include "algorithm"
using namespace std;

int dp[1010][1010];

int main()
{
string str1, str2;
int i, j, len1, len2;
while (cin >> str1 >> str2)
{
len1 = str1.length();
len2 = str2.length();
for (i = 1; i <= len1; i++)
for (j = 1; j <= len2; j++)
{
if (str1[i-1] == str2[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;
}
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: