HDU1159最长公共子序列

HDU1159-朴素的最长公共子序列 Common Subsequence Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/32768 K (Java/Others) Total Submission(s): 20301    Accepted Submission(s): 8716 Problem Description A subseque 阅读详情

这个题貌似是算法导论的原题
不过本着能循环坚决不用递归的态度
我认真地写了循环…
关键其实就是一个转移方程
如果两个字节一样,他就等于
dp[a][b]=dp[a+1][b+1]+1;
如果不一样就找两边最大的
dp[a][b]=max(dp[a][b+1],dp[a+1][b]);
另外在DP题里有点找到感觉了,如果想要用循环就先找到以前递归的感觉,然后自底向上加回去

#include<iostream>
#include<cmath>
#include<cstdio>
#include<string>
#include<algorithm>
#include<memory.h>
using namespace std;
int dp[605][605];
int main()
{
    string n,m;
    while(cin>>n>>m)
    {
        memset(dp,0,sizeof(dp));
        int q,w;
        q=n.size();
        w=m.size();
        for(int a=q-1;a>=0;a--)
        {
            for(int b=w-1;b>=0;b--)
            {
                if(n[a]==m[b])
                {
                    dp[a][b]=dp[a+1][b+1]+1;
                }
                else
                {
                    dp[a][b]=max(dp[a][b+1],dp[a+1][b]);
                }
            }
        }
        cout<<dp[0][0]<<endl;
    }
    return 0;
}
STM32中断实战:用ITR9606红外传感器DIY转速计数器(附完整代码) 本文详细介绍了如何使用STM32中断机制和ITR9606红外传感器DIY高精度转速计数器。从传感器选型、中断配置到抗干扰设计,提供完整的实战指南和优化代码,特别适合嵌入式开发者和硬件工程师快速实现工业级转速检测系统。 阅读详情

相关推荐

7 series FPGAs Transceiver Wizard IP核使用和测试

学习FPGA一段时间了,前面一直没有系统的总结,这学期把在项目中用到的IP核和一些调试过程中遇到的问题总结一下发出来,坚持下去,一起进步! 今天总结一下的GTH核的使用和测试。 软件版本:Vivado 2017.4 IP核版本:7 Series FPGAs Transceivers Wizard (3.6) FPGA:xc7vx690tfft1927 实现功能: 四路光纤数据接收,由于GTX IP...

qq_39921762的博客 1万+

hdu1159 最大公共子序列(lcs) hdu 1080

题目链接: hdu1159  点击打开链接 题意:给你两个字符串,求lcs 首先lcs的递推关系式是;d[i][j](以i为结尾的子序列1和以j为结尾的子序列2的最大公共子序列)                d[i-1][j-1]+1   (s1[i]==s2[j]) d[i][j]=  {                max(d[i-1][j],d[i][j-1])  (s1[i

Alberttttt的博客 483

CA(载波聚合)

文章目录CA基本概念1. CA分类2. Pcell、Scell以及Serving CellPcell(Primary Cell)Scell(Secondary Cell)3. Pcell、Scell部署场景场景1场景2场景3场景44. CA的协议控制4.1 Camping/Connetion Establishment:4.2 CC Management/SCell Addition/Release:4.3 Handover/Measurements:4.4 SCell激活 CA基本概念 CA也就是我们中文

你又来看我了,一起学习吧 4万+

hdu 1159 动态规划求最长公共子序列

文章目录前言一、题目二、使用步骤1.引入库2.读入数据总结 前言 用dp求的最大公共子序列,AC一波~ 一、题目 示例:pandas 是基于NumPy 的一种工具,该工具是为了解决数据分析任务而创建的。 二、使用步骤 1.引入库 代码如下(示例): import numpy as np import pandas as pd import matplotlib.pyplot as plt import seaborn as sns import warnings warnings.filterwarnin

愤怒的小火柴人 333

基于RK3588的高效音视频对讲系统设计与实现

本文详细介绍了基于RK3588芯片的高效音视频对讲系统设计与实现。文章深入剖析了RK3588在8K编解码、高性能音频DSP及丰富接口方面的优势,并提供了从开发环境搭建、分层软件架构设计,到视频采集编码、音频回声消除及低延迟网络传输的完整实战指南,旨在帮助开发者充分利用该芯片硬件能力,构建稳定、低延迟的实时通信系统。

dapp9builder的博客 256

loadStop的原因导致的SSUSP

Total内存值是可用来调度的可用内存,当前可用内存为 0M。 loadSched和loadStop的阈值是根据 Total 内存和节点内存来做限制的。 loadStop 50G,现在有大量作业SSUSP,说明之前某个时间点该节点内存可能有低于50G的时候,导致作业SSUSP,具体是否是这个原因引起的需要用 bjobs -l JobID 看下作业的详细信息。 如果是loadStop的原因导致的 SSUSP,根据loadStop设置的阈值,Total 值高于loadStop值后,将逐步恢复挂起的作业

Blueberry521的博客 666

hdu 1159 (最长公共子序列)

//f(i,j)= {f(i-1,j-1)+1 (a[i]==b[j]) //        max(f(i-1,j),f(i,j-1)) (a[i]!=b[j]) ////由于f(i,j)只和f(i-1,j-1), f(i-1,j)和f(i,j-1)有关, 而在计算f(i,j)时, 只要选择一个合适的顺序, 就可以保证这三项都已经计算出来了, 这样就可以计算出f(i,j). 这样一直推到f(le

悔惜晟 1185

Error relaunching VirtualBox VM process:5错误解决

前几天在重新使用VirtualBox的时候出现了一个挺恶心的错误,如图 百度了好久没有找到合适的解决方法。功夫不负有心人,在查阅了vb相关论坛时发现了大牛对此问题的诸多解决方案。下面我把此论坛的内容总结一下,希望对大家有帮助。 论坛链接:Diagnosing VirtualBox Hardening Issues 时间不足的小伙伴可以直接看 解决方法 造成这个错误的主要原因是,windows操作系统与oracle vb的不兼容。有两个方面,一是非官方windows系统中包含了一些没有签名的d

JaCenz的博客 3万+

HDU1159(dp最长公共子序列)

题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=1159 Common Subsequence Problem Description A subsequence of a given sequence is the given sequence with some elements (possible none) left out. Given a ...

qq_40739219的博客 627

LLC型自驱动半桥谐振变换器:电压电流变化与自然换向解析

变换器的工作状态经历了多个阶段,从模态一的关断状态,到模态二和三的电流供电状态,每个阶段都得到了合理的设计和优化。的工作原理,尤其是在半个周期内的电压和电流变化。上图 展示了该变换器在工作时的电压和电流波形,它为我们揭示了变换器如何通过精确的电流和电压控制,优化性能并实现高效能转换。,并根据负载情况调整电流和电压的工作模式,能够极大提升变换器的效率,尤其是在零电压开通和自然换向的设计中,发挥着关键作用。这意味着,电流会随着时间周期的变化,呈现典型的振荡波形,从而达到良好的电流控制。是两个关键的电流变量。

weixin_43199439的博客 279

开源免费!ReaLTaiizor如何用MIT许可证打造专业级WinForm UI?

摘要: ReaLTaiizor是一款开源UI控件库,为WinForm应用提供现代化界面解决方案。支持100+组件、多主题切换(浅色/深色/自定义)和.NET 4.8-8.0全版本兼容,MIT许可证允许免费商用。通过NuGet快速安装,3步改造传统界面:1)注入主题(如this.Theme = new Dark()),2)替换原生控件为高颜值组件(如ModernGrid替代DataGridView),3)集成高级功能(分页/动画提示)。典型场景包括登录界面美化(进度动画+通知控件)和数据表格Material风

墨夶的博客 1521

hdu1159(最长公共子序列,滚动数组)

状态转移方程为:dp[i][j]=dp[i-1][j-1]+1(s1[i]==s2[j]);dp[i][j]=max(dp[i-1][j],dp[i][j-1])(s1[i]!=s2[j]) 代码如下: #include #include #include #include #include #include #include #include #include #include #i

u013509299的专栏 1280

2024年数字IC秋招-格科微-数字电路设计工程师-笔试题

笔试题型:简答题(9个)笔试平台:牛客(电脑监控)笔试时间:2h。

qq_42135020的博客 1605

LCS最长公共子序列HDU1159

最近一直在学习算法,基本上都是在学习动态规划以及字符串。当然,两者交集最经典之一则是LCS问题。 首先LCS的问题基本上就是在字符串a,b之间找到最长的公共子序列,比如 YAOLONGBLOG 和 YCLPBPG,其最长公共子序列则是YLBG 当然当字符串比较大时候,枚举则略显困难。 首先我们先考虑求一个基本问题,就是LCS的长度。 很容易可以理解递推式:  当a[i]==b[j],c[

u011044759的专栏 869

C# WinForm 基于DirectShow.dll编写的程序,可边预览边保存视频,音频和图片

基于微软的DirectShow.dll的二次开发1.自动识别连接的摄像头跟麦克风且可以对其进行选择(默认选中第一个)2.可录制wmv和avi两种格式的视频并且都带有音频,avi可以录制的分辨率和帧数进行选择,wmv默认进行了淸晰度优化如不喜欢可去除代码中有相关提示3.可在预览点开之后进行拍照,也可边录制视频边拍照4.添加了视频和音频的压缩功能(酌情使用)这次二次开发发现C#对DirectShow的相关信息太少,这次做完也不敢藏私共享出来,还望大家指正

数学建模模型总结

这是本人在两年内准备参加数学建模竞赛搜集到的模型资料,已经经过了本人的筛选和整理,希望能够对准备参加数学建模竞赛的学弟学妹们提供一些帮助!

HDU 1159 dp+最长公共子序列

HDU 1159 Common Subsequence Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others) Total Submission(s): 51579 Accepted Submission(s): 23755 Problem Description A subseq...

weixin_43971913的博客 173

怀旧版电脑GBC模拟器

再现原版GBC掌机的界面,电脑运行连游戏界面都一样大小,很怀旧,很真实,(英文版)强烈推荐,很小的文件,很难才找到的。

HDU 1159 Common Subsequence 最长公共子序列(LCS)

HDU 1159 Common Subsequence 最长公共子序列(LIS) 题目链接 HDU1159 解释 这个是《算法竞赛从入门到进阶》的例题,就不是剽窃书上的讲解了。 过题代码 普通版 #include<bits/stdc++.h> #define ll long long using namespace std; const int MAXN = 6000; const i...

qq_43474648的博客 234

TMS_WebGMaps_1.9.8.0_Full_Source

TMS_WebGMaps_1.9.8.0_Full_Source 全源码 delphi cbuilder

hdu 1159 最长公共子序列

hdu 1159 最长公共子序列 http://blog.youkuaiyun.com/ninefailure/article/details/52056446 题解 求最长公共子序列 递推 void solve() { for (int i = 0; i < n; ++i) { for (int j = 0; j < m; ++j) {

人面桃花 278

【HDU】1159 Common Subsequence(DP、最长公共子序列)

【HDU】1159 Common Subsequence (DP、最长公共子序列) DP,dp[i][j]表示a[0]-a[i]和b[0]-b[j]间的最长公共子序列。 打表可知:当a[i]==b[j]时,dp[i][j]=dp[i-1][j-1]+1; 当a[i]!=b[j]时,dp[i][j]=max(dp[i-1][j],dp[i][j-1]).

xuziling_的博客 326

hdu 1159 pku 1936最长公共子序列

额,比较基础的模板题,求最长公共子序列 这里用滚动数组来保存中间值,因为只需要保存相邻俩行的值. pku的1936只需要加一步判断即可,判断最长公共子序列长度是否等于s1 的长度 递推公式为: if(s1[i]==s2[j]) c[i,j]=c[i-1,j-1]+1; else c[i,j]=max(c[i-1,j],c[i,j-1]) pku1936 #include<i...

weixin_30471065的博客 83

HDU 1159 最长公共子序列问题 动态规划

<br />HDU 1159 最长公共子序列问题<br />详见杭电刘春英老师PPT<br /> <br /> <br />//DP算法: //用f[i][j] 表示字符串a的第i个字母与字符串b的第j个字母比较,得到两串相比时第i和第j个字母之前相同字母的个数 // 如果a[i-1]==b[j-1], f(i,j)= f(i-1,j-1)+1;否则,f(i,j)=max(f(i,j-1),f(i-1,j)); #include<iostream> #include<string> using n

Coding for Dreams 2314

Hdu1159 Common Subsequence(简单递归)

Hdu1159Common Subsequence Problem Description A subsequence of a given sequence is the given sequence with some elements (possible none) left out. Given a sequence X = <x1, x2, ..., xm> anoth...

qq_43691704的博客 201

hdu 1159 最长公共子序列

hdu1159 题目要求两个字符串最长公共子序列, 状态转换方程   f[i][j]=f[i-1][j-1]+1; a[i]=b[j]时        f[i][j]=MAX{f[i-1][j],f[i][j-1]}  a[i]!=b[j]时 f[i][j]记录a字符串 i 前子串 与 b字符串 j 前子串最长公共子序列  初始化后,自底向上,逐步求解    动态规划的思想

GarySE 872

最长公共子序列 Common Subsequence HDU - 1159

题目链接:https://vjudge.net/problem/HDU-1159 #include <cstdio> #include <iostream> #include <algorithm> #include <cstring> #include <cmath> #include <vector> #include &...

A 206

Hdu 1159 Common Subsequence

Hdu 1159 Common Subsequence 题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=1159 解题思路: 用相当暴力的dp去匹配两个串,dp[i][j]表示长度为i’的a串和长度为j的b串所得出的最长子串长度,那么很显然,每次匹配上的结果就等于i和j各减一的出的最大值再加上一,没有匹配上意味着i或者j减少一的两个值中取大的,因为这...

weixin_43823753的博客 157

HDU 1159 最长公共子序列

题目:http://acm.hdu.edu.cn/showproblem.php?pid=1159 输入两个字符串,求两个字符串的最长公共子序列。 abcfbc abfcab例如 a b f b就是公共子序,即从左到右的顺序字符是一样的。思路:这是道最长公共子序模板体。可以用dp[i][j]表示第一个字符串到i位置和第二个字符串到j位置时的公共子序数量。当a[i]==b[j]时,dp[i+1]

不平凡的博客 229
上一篇: HDU1275DP
下一篇: HDU1087最长上升子序列
NineFailure
博客等级 码龄11年 22粉丝 317原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值