Acwing897 最长公共子序列
题目大意:求两个字符串的最长公共子序列的长度。
分析:这是一个典型的dp入门题,LCS。
代码:
#include<bits/stdc++.h>
using namespace std;
const int maxn = 1e3+;
char a[maxn],b[maxn];
int dp[maxn][maxn];
void Dp() {
int n = strlen(a);
int m = strlen(b);
for (int i = ; i < n; i++) {
for (int j = ; j < m; j++) {
if (a[i] == b[j])
dp[i + ][j + ] = dp[i][j] + ;
else
dp[i + ][j + ] = max(dp[i][j + ], dp[i + ][j]);
}
}
}
int main() {
int n, m;
cin >> n >> m;
cin >> a >> b;
Dp();
cout << dp[n][m] << endl;
return ;
}
Acwing897 最长公共子序列的更多相关文章
- 用python实现最长公共子序列算法(找到所有最长公共子串)
软件安全的一个小实验,正好复习一下LCS的写法. 实现LCS的算法和算法导论上的方式基本一致,都是先建好两个表,一个存储在(i,j)处当前最长公共子序列长度,另一个存储在(i,j)处的回溯方向. 相对 ...
- 动态规划之最长公共子序列(LCS)
转自:http://segmentfault.com/blog/exploring/ LCS 问题描述 定义: 一个数列 S,如果分别是两个或多个已知数列的子序列,且是所有符合此条件序列中最长的,则 ...
- [Data Structure] LCSs——最长公共子序列和最长公共子串
1. 什么是 LCSs? 什么是 LCSs? 好多博友看到这几个字母可能比较困惑,因为这是我自己对两个常见问题的统称,它们分别为最长公共子序列问题(Longest-Common-Subsequence ...
- 动态规划求最长公共子序列(Longest Common Subsequence, LCS)
1. 问题描述 子串应该比较好理解,至于什么是子序列,这里给出一个例子:有两个母串 cnblogs belong 比如序列bo, bg, lg在母串cnblogs与belong中都出现过并且出现顺序与 ...
- LintCode 77: 最长公共子序列
public class Solution { /** * @param A, B: Two string. * @return: the length of the longest common s ...
- 删除部分字符使其变成回文串问题——最长公共子序列(LCS)问题
先要搞明白:最长公共子串和最长公共子序列的区别. 最长公共子串(Longest Common Substirng):连续 最长公共子序列(Longest Common Subsequence,L ...
- LCS(Longest Common Subsequence 最长公共子序列)
最长公共子序列 英文缩写为LCS(Longest Common Subsequence).其定义是,一个序列 S ,如果分别是两个或多个已知序列的子序列,且是所有符合此条件序列中最长的,则 S 称为已 ...
- 准备NOIP2017 最长公共子序列(模版)
一些概念: (1)子序列: 一个序列A = a1,a2,--an,中任意删除若干项,剩余的序列叫做A的一个子序列.也可以认为是从序列A按原顺序保留任意若干项得到的序列.例如: 对序列 1,3,5, ...
- 51nod 1006 最长公共子序列Lcs(经典动态规划)
传送门 Description 给出两个字符串A B,求A与B的最长公共子序列(子序列不要求是连续的). 比如两个串为: abcicba abdkscab ab是两个串的子序列,abc也是 ...
随机推荐
- 【Go语言系列】1.3、GO语言简介:Go语言开发的知名项目
下面列举的是原生使用Go语言进行开发的部分项目.1.DockerDocker 是一种操作系统层面的虚拟化技术,可以在操作系统和应用程序之间进行隔离,也可以称之为容器.Docker 可以在一台物理服务器 ...
- C:sizeof 运算符
sizeof不是函数,所以不需要包含任何头文件,它的功能是计算一个数据类型的大小,单位为字节 sizeof的返回值为size_t size_t类型在32位操作系统下是unsigned int,是一个无 ...
- Python:re 模块
re模块是python内置的正则表达式模块
- python:字符串类型
字符串概念 字符串:由单个字符组成的一个序列, 字符串是一个不可变的类型 形式: 非原始字符串: 单引号:单引号包起来的一段字符就是字符串 双引号:和单引号一样 三引号:三引号包括的字符串可以换行,保 ...
- 24 JavaScript对象访问器&JavaScript对象构造器
ES5引入了Getter和Setter Getter和Setter允许定义对象访问器 JavaScript Getter(get关键字):获取对象属性 <script> var perso ...
- 吴裕雄--天生自然TensorFlow2教程:梯度下降简介
import tensorflow as tf w = tf.constant(1.) x = tf.constant(2.) y = x * w with tf.GradientTape() as ...
- 最全面的C/C++编码规范总结
C语言是面向过程的,而C++是面向对象的 对于不同的编程语言来说,具体的编码规范可以有很大的不同,但是其宗旨都是一致的,就是保证代码在高质量完成需求的同时具备良好的可读性.可维护性.例如我们可以规定某 ...
- netty代理http&https请求
(1)关键代码 package test; import java.security.cert.CertificateException; import javax.net.ssl.SSLExcept ...
- STM的低功耗系列
STM32L0的2个新增外设:一是集成了晶振的USB,第二高精度的12位或16位ADC: 特色外设LUART:传统的MCU当CPU睡眠,进入低功耗模式下,外设是关闭的,因为时钟是关闭的,而意法半导体的 ...
- tomcat配置限制ip和建立图片服务器
1.配置限制ip访问 打开 tomcat里conf文件下的server.xml 在<Host name="localhost" appBase="webapps&q ...