博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
HDU1423:Greatest Common Increasing Subsequence(LICS)
阅读量:5958 次
发布时间:2019-06-19

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

Problem Description
This is a problem from ZOJ 2432.To make it easyer,you just need output the length of the subsequence.
 

 

Input
Each sequence is described with M - its length (1 <= M <= 500) and M integer numbers Ai (-2^31 <= Ai < 2^31) - the sequence itself.
 

 

Output
output print L - the length of the greatest common increasing subsequence of both sequences.
 

 

Sample Input
1 5 1 4 2 5 -12 4 -12 1 2 4
 

 

Sample Output
2
 

 

题意:求最长递增公共子序列的长度

思路:直接模板

 

#include 
#include
#include
using namespace std;int n,m,a[505],b[505],dp[505][505];int LICS(){ int MAX,i,j; memset(dp,0,sizeof(dp)); for(i = 1; i<=n; i++) { MAX = 0; for(j = 1; j<=m; j++) { dp[i][j] = dp[i-1][j]; if(a[i]>b[j] && MAX

 

上面的虽然可以解决,但是二维浪费空间较大,我们注意到在LICS函数中有一句dp[i][j] = dp[i-1][j],这证明dp数组前后没有变化!于是可以优化成一维数组!

 

#include 
#include
#include
using namespace std;int a[505],b[505],dp[505],n,m;int LICS(){ int i,j,MAX; memset(dp,0,sizeof(dp)); for(i = 1; i<=n; i++) { MAX = 0; for(j = 1; j<=m; j++) { if(a[i]>b[j] && MAX

 

 

转载地址:http://xrkax.baihongyu.com/

你可能感兴趣的文章
开发node桌面级应用工具:apk转化epub
查看>>
笨笨图片批量抓取下载 V0.2 beta[C# | WinForm | 正则表达式 | HttpWebRequest | Async异步编程]...
查看>>
VS2010启动程序提示文件加载 使用 简体中文(GB2312)编码加载文件解决办法
查看>>
代码生成工具Database2Sharp中增加视图的代码生成以及主从表界面生成功能
查看>>
Android 动态注册 亮屏、息屏广播
查看>>
NYOJ 题目77 开灯问题(简单模拟)
查看>>
15.6. HTML嵌入图片
查看>>
Gym 100952G&&2015 HIAST Collegiate Programming Contest G. The jar of divisors【简单博弈】
查看>>
Could not find class &#39;XXX.activity‘&#39;, referenced from method &#39;YYYY&#39;
查看>>
国内较快的maven镜像
查看>>
漫谈递归转非递归
查看>>
第 52 章 SQL Statement Syntax
查看>>
mysql 修改表名的方法:sql语句
查看>>
JQuery实现日期联动
查看>>
eclipse让Html Javascript 自动提示
查看>>
常用网址记录
查看>>
Java的垃圾回收之算法
查看>>
利用Aspose.Word控件实现Word文档的操作
查看>>
72.8. ERROR 1819 (HY000): Your password does not satisfy the current policy requirements
查看>>
通过Python处理Android API Doc离线访问
查看>>