一个字符串的 子序列 是指这样一个新的字符串:它是由原字符串在不改变字符的相对顺序的情况下删除某些字符(也可以不删除任何字符)后组成的新字符串。
例如,“ace” 是 “abcde” 的子序列,但 “aec” 不是 “abcde” 的子序列。两个字符串的「公共子序列」是这两个字符串所共同拥有的子序列。

解题思路:

代码如下:

#include <iostream>
#include <cstring>
using namespace std;
string a, b;
const int N = 10010;
int dp[N][N];int main() {while (cin >> a >> b) {memset(dp, 0, sizeof(dp));int len_a = a.length();int len_b = b.length();for (int i = 1; i <= len_a; i++)for (int j = 1; j <= len_b; j++) {if (a[i - 1] == b[j - 1])dp[i][j] = dp[i - 1][j - 1] + 1;elsedp[i][j] = max(dp[i - 1][j], dp[i][j - 1]);}cout << dp[len_a][len_b] << endl;}return 0;
}

参考于<<手写代码必备手册>> 戴方勤

最长公共子序列-dp相关推荐

  1. Bailian2806 公共子序列【最长公共子序列+DP】

    2806:公共子序列 描述 我们称序列Z = < z1, z2, -, zk >是序列X = < x1, x2, -, xm >的子序列当且仅当存在 严格上升 的序列< ...

  2. NYOJ 36 最长公共子序列 dp

    最长公共子序列 点击打开链接时间限制:3000 ms  |  内存限制:65535 KB 难度:3 描述 咱们就不拐弯抹角了,如题,需要你做的就是写一个程序,得出最长公共子序列. tip:最长公共子序 ...

  3. LeetCode 1035. 不相交的线(最长公共子序列DP)

    文章目录 1. 题目 2. 解题 1. 题目 我们在两条独立的水平线上按给定的顺序写下 A 和 B 中的整数. 现在,我们可以绘制一些连接两个数字 A[i] 和 B[j] 的直线,只要 A[i] == ...

  4. nyoj 36 最长公共子序列 dp问题最长公共子序列 时间限制:3000 ms | 内存限制:65535 KB 难度:3 描述 咱们就不拐弯抹角了,如题,需要你做的就是写一个程序,得出最长公共

    最长公共子序列 时间限制: 3000 ms  |  内存限制: 65535 KB 难度: 3 描述 咱们就不拐弯抹角了,如题,需要你做的就是写一个程序,得出最长公共子序列. tip:最长公共子序列也称 ...

  5. 动态规划问题——最长公共子序列问题

    题目: 给定两个字符串 str1 和 str2 ,返回两个字符串的最长公共子序列. 举例: str1 = "1A2C3D4B56"  str2 = "B1D23CA45B ...

  6. HDU1159(dp最长公共子序列)

    题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=1159 Common Subsequence Problem Description A subsequ ...

  7. DP专辑之最长公共子序列及其变形

    vijos1111(裸的最长公共子序列) 链接:www.vijos.org/p/1111 题解:好久没有写最长公共子序列了,这题就当是复习了.求出最长公共子序列,然后用两个单词的总长度减去最长公共子序 ...

  8. leetcode 583. Delete Operation for Two Strings | 583. 两个字符串的删除操作(最长公共子序列,DP)

    题目 https://leetcode.com/problems/delete-operation-for-two-strings/ 题解 本题实质上是个最长公共子序列问题,又是经典的 递归-> ...

  9. 51NOD 1006 最长公共子序列 Lcs 动态规划 DP 模板题 板子

    给出两个字符串A B,求A与B的最长公共子序列(子序列不要求是连续的). 比如两个串为: abcicba abdkscab ab是两个串的子序列,abc也是,abca也是,其中abca是这两个字符串最 ...

最新文章

  1. mysql 图形化工具
  2. NVIDIA Tesla/Quadro和GeForce GPU的比较
  3. python医疗系统代码_吴裕雄 人工智能 java、javascript、HTML5、python、oracle ——智能医疗系统WEB端复诊代码简洁版实现...
  4. 其他类型的链表和线性表的总结(一级)
  5. android自动软键盘,Android自定义软键盘
  6. 传说中理科生看到会沉默、文科生看到会流泪的【程序员文史综合题目】
  7. C语言学习及应用笔记之四:C语言volatile关键字及其使用
  8. dcloud会员激活mui
  9. hadoop漏洞_【漏洞公告】CVE-2017-7669:Apache Hadoop远程权限提升漏洞
  10. openresty 前端开发入门一
  11. 一篇文章教你如何刷Letcode进大厂
  12. cad卸载不干净_Adobe系列软件总是卸载不干净?试试这个Adobe卸载工具
  13. Keil uVision4 C51完整版
  14. shc在嵌入式Linux上的使用
  15. LittleVGL-键盘控件
  16. pixhawk通信机制
  17. 360安全浏览器支持国密功能
  18. CodeForces 128A Statues 简单搜索
  19. flume+kafka集群解决某著名联锁大型超市超过25年POS线下收单系统变实时系统的典型案例
  20. 28岁想入行软件测试,可行吗?

热门文章

  1. C和指针之用拉托斯特尼筛方法(Eratosthenes)查找区间质素个数
  2. Linux之dd命令详解
  3. (七)python3 只需3小时带你轻松入门——List与dict
  4. python中sendkeys.sendkeys_python的webbrowser模块和SendKeys模块
  5. access 子窗体 鼠标滚动不工作_Python GUI项目实战(五)明细信息窗体的完善
  6. 年仅53岁,因连续工作、过度劳累,这位抗疫幕后的科研专家去世
  7. 天冷打字全靠抖?!桌面暖手宝,体验10s速热,温暖升级,冬天有TA就够了
  8. 有一说一,确实。。 | 今日最佳
  9. php json.parse,JSON.parse()与JSON.stringify()和eval()使用方法详解
  10. linux 编写脚本示范,Linux-scripts-简单脚本和脚本的执行