博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
hdu1087 dp(最大上升子序列和)
阅读量:6602 次
发布时间:2019-06-24

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

题意,给出一列数,要求所有上升子序列中序列和最大的。

这回不是求长度了,但是还是相当基础的 dp 水题,只要用 dp [ q ] 记录以 第 q 个数 a [ q ] 为结尾的上升子序列的最大的和就可以了

对于 q ,初始化 dp [ q ] = a [ q ] ,从最前面到 q 遍历,若有第 i 个数 a [ i ] < a [ q ] ,则 dp [ q ] = max ( dp [ q ] , dp [ i ] + a [ q ] );

这样 dp 一遍并同时记录下最大值,就可以直接输出结果了

 

1 #include
2 #include
3 #define max(a,b) a>b?a:b 4 5 int a[1002]; 6 long long dp[1002]; 7 8 int main(){ 9 int n;10 while(scanf("%d",&n)!=EOF&&n!=0){11 int q,i,j;12 long long m=0;13 for(q=1;q<=n;q++){14 scanf("%d",&a[q]);15 dp[q]=a[q];16 for(i=1;i
View Code

 

转载于:https://www.cnblogs.com/cenariusxz/p/4290408.html

你可能感兴趣的文章
RecyclerView重用导致的元素重复问题
查看>>
iOS网络协议----HTTP/TCP/IP浅析
查看>>
ubuntu 12.04 安装 redis
查看>>
基于多线程实现套接字服务端支持并发
查看>>
IOS_CGRect
查看>>
Sql Server中不常用的表运算符之APPLY(1)
查看>>
【DM642】ICELL Interface—Cells as Algorithm Containers
查看>>
linux所有命令失效的解决办法
查看>>
力扣算法题—085最大矩阵
查看>>
svs 在创建的时候 上传文件夹 bin obj 这些不要提交
查看>>
mysql-用命令导出、导入表结构或数据
查看>>
Tinkphp
查看>>
EntityFrameworkCore 一对一 && 一对多 && 多对多配置
查看>>
How to temporally disable IDE tools (load manually)
查看>>
Vue.js学习 Item4 -- 数据双向绑定
查看>>
几种排序方式的java实现(01:插入排序,冒泡排序,选择排序,快速排序)
查看>>
test--构造函数写法
查看>>
server application unavailable
查看>>
浅谈尾递归的优化方式
查看>>
eclipse 的小技巧
查看>>