hdu1087 Super Jumping! Jumping! Jumping!---基础DP---递增子序列最大和
题目链接:
http://acm.hdu.edu.cn/showproblem.php?pid=1087
题目大意:
求递增子序列最大和
思路:
直接dp就可以求解,dp[i]表示以第i位结尾的递增子序列最大和,初始化dp[i] = a[i],转移方程dp[i] = max(dp[i], a[i] + dp[j])如果j < i && a[j] < a[i]
#include<cstdio>
#include<cstring>
#include<iostream>
#include<algorithm>
#include<string>
using namespace std;
typedef long long ll;
int cases;
const int maxn = 1e5 + ;
typedef long long ll;
int n;
int a[maxn], dp[maxn];//dp[i]表示以第i位结尾的最大上升序列和
//dp[i] = max(dp[i], a[i] + dp[j])如果j < i && a[j] < a[i]
int main()
{
while(cin >> n && n)
{
for(int i = ; i < n; i++)
{
cin >> a[i];
dp[i] = a[i];
}
for(int i = ; i < n; i++)
{
for(int j = ; j < i; j++)
{
if(a[j] < a[i])dp[i] = max(dp[i], a[i] + dp[j]);
}
}
int ans = dp[];
for(int i = ; i < n; i++)ans = max(ans, dp[i]);
cout<<ans<<endl;
}
return ;
}
hdu1087 Super Jumping! Jumping! Jumping!---基础DP---递增子序列最大和的更多相关文章
- [GRYZ2014]递增子序列最大和
[问题描述] 给定长度为n的正整数序列a1,a2,…,an. 求一个递增的子序列,和最大. [输入] 第一行,n,表示给定序列的个数. 第二行,n个用空格隔开的正整数. [输出] 递增子序列的最大和. ...
- HDU 1087 Super Jumping....(动态规划之最大递增子序列和)
Super Jumping! Jumping! Jumping! Problem Description Nowadays, a kind of chess game called “Super Ju ...
- Super Jumping! Jumping! Jumping(最大递增子序列的和)
Nowadays, a kind of chess game called “Super Jumping! Jumping! Jumping!” is very popular in HDU. May ...
- HDU 1087 Super Jumping! Jumping! Jumping! 最大递增子序列
Super Jumping! Jumping! Jumping! Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 ...
- 「kuangbin带你飞」专题十二 基础DP
layout: post title: 「kuangbin带你飞」专题十二 基础DP author: "luowentaoaa" catalog: true tags: mathj ...
- HDU 1087 简单dp,求递增子序列使和最大
Super Jumping! Jumping! Jumping! Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 ...
- kuangbin带你飞dp专题-基础dp
dp HDU - 1257 最少拦截系统 最长递增子序列 #include<iostream> using namespace std; const int maxn=1e7; int a ...
- kuangbin 基础DP集合
HDU 1024第一遍水过,没有体会到这个题的奥妙,思考了很久终于体会了.大概意思是求把序列分成m段的子序列,并不一定要覆盖完,求子序列和的最大值我们首先要写出基本的动态转移方程: DP:dp[ i ...
- 基础dp
队友的建议,让我去学一学kuangbin的基础dp,在这里小小的整理总结一下吧. 首先我感觉自己还远远不够称为一个dp选手,一是这些题目还远不够,二是定义状态的经验不足.不过这些题目让我在一定程度上加 ...
随机推荐
- float与double的精度和范围
1 范围 float和double的范围是由指数的位数来决定的. float的指数位有8位,而double的指数位有11位,分布如下: float: 1bit(符号位) 8bits(指数位) 23bi ...
- 安装VMware workstation遇到的两个问题:安装过程中的DLL问题和安装后打开需要的管理权限问题
1.安装过程中遇到Microsoft runtime DLL安装程序未能完成安装的问题? 在遇到这个问题时不要点击确定,需要在开始菜单中输入%temp%,然后跳转到一个文件夹里,找到后缀为setup的 ...
- ELK日志收集平台部署
需求背景 由于公司的后台服务有三台,每当后台服务运行异常,需要看日志排查错误的时候,都必须开启3个ssh窗口进行查看,研发们觉得很不方便,于是便有了统一日志收集与查看的需求. 这里,我用ELK集群,通 ...
- linux --> 获取系统启动时间
获取系统启动时间 一.前言 时间对操作系统来说非常重要,从内核级到应用层,时间的表达方式及精度各部相同.linux内核里面用一个名为jiffes的常量来计算时间戳.应用层有time.getdaytim ...
- 关于BufferedReader的readLine方法遇到的坑
今天偶然用到BufferedReader,在读取文本后输出数据的时候遇到了隔行输出的问题. 如: 床前明月光 疑是地上霜 123456 789789 输出的为:疑是地上霜789789 找了一下,最终找 ...
- Spring Boot入门教程2-1、使用Spring Boot+MyBatis访问数据库(CURD)注解版
一.前言 什么是MyBatis?MyBatis是目前Java平台最为流行的ORM框架https://baike.baidu.com/item/MyBatis/2824918 本篇开发环境1.操作系统: ...
- QuietHit小Game
根据项目的要求分别建出几个类 有游戏类 玩家类 测试类 等级类 等级时间类 一以下类图: 游戏类: public class Game { private Player player; public ...
- 云计算--网络原理与应用--20171120--VLAN与三层交换机配置
什么是VLAN及其配置 Trunk的原理与配置 三层交换机的基本配置 实验:配置一个三层交换机 一 VLAN 的概念及优势 VLAN(virtual local area network)就是虚拟局域 ...
- python IDLE中反斜杠显示为人民币符号¥的解决办法
改换英文字体即可
- vim的配置
修改根目录下.vimrc文件: 1.设定解码,支持中文 set fileencodings=utf-8,ucs-born,gb18030,gbk,gb2312,cp936 set termencodi ...