博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Common Subsequence(最长公共子序列)
阅读量:4320 次
发布时间:2019-06-06

本文共 1592 字,大约阅读时间需要 5 分钟。

A subsequence of a given sequence is the given sequence with some elements (possible none) left out. Given a sequence X = < x1, x2, ..., xm > another sequence Z = < z1, z2, ..., zk > is a subsequence of X if there exists a strictly increasing sequence < i1, i2, ..., ik > of indices of X such that for all j = 1,2,...,k, x ij = zj. For example, Z = < a, b, f, c > is a subsequence of X = < a, b, c, f, b, c > with index sequence < 1, 2, 4, 6 >. Given two sequences X and Y the problem is to find the length of the maximum-length common subsequence of X and Y.

Input

The program input is from the std input. Each data set in the input contains two strings representing the given sequences. The sequences are separated by any number of white spaces. The input data are correct.

Output

For each set of data the program prints on the standard output the length of the maximum-length common subsequence from the beginning of a separate line.

Sample Input

abcfbc         abfcabprogramming    contest abcd           mnp

Sample Output

420

题解:动态规划

代码:

#include
#include
#include
#include
using namespace std;int main(){ char a[1005],b[1005]; int dp[1005][1005]; while(scanf("%s%s",a,b)!=EOF) { memset(dp,0,sizeof(dp)); for(int t=1;t<=strlen(a);t++) { for(int j=1;j<=strlen(b);j++) { if(a[t-1]==b[j-1]) { dp[t][j]=max(dp[t-1][j-1]+1,dp[t][j]); } else { dp[t][j]=max(dp[t-1][j],dp[t][j-1]); } } } printf("%d\n",dp[strlen(a)][strlen(b)]); } }

 

转载于:https://www.cnblogs.com/Staceyacm/p/10782064.html

你可能感兴趣的文章
银行客户流失预测
查看>>
PDA手持扫描资产标签,盘点完成后将数据上传到PC端,固定资产系统查看盘点结果...
查看>>
[deviceone开发]-do_ImageView实现正圆的示例
查看>>
sql over(partition by) 开窗函数的使用
查看>>
100以内与7有关的数
查看>>
修改数据表中某字段的信息
查看>>
Mac下terminal中无法显示中文的问题
查看>>
1-库表查看及常用数据类型
查看>>
第六次java作业
查看>>
BNUOJ 4101(线性表的插入与删除)
查看>>
关于C++动态数组的若干问题
查看>>
Why Normal--牛人都干啥去了?
查看>>
[转载]MySQL concat函数的使用
查看>>
go: writing stat cache:, permission denied
查看>>
Xcode7.0.1(ios9)的部分适配问题
查看>>
hdu---(2604)Queuing(矩阵快速幂)
查看>>
关于Easyui的窗口和tab页面不执行JS的原因说明
查看>>
机器学习入坑指南(七):机器学习的知识结构
查看>>
又是企鹅惹的祸
查看>>
基于jQuery点击圆形边框弹出图片信息
查看>>