hdu1087Super Jumping! Jumping! Jumping!(最大递增序列和)
题意:棋牌游戏如今,一种被称为“超级跳!跳!跳!“HDU是非常流行的。也许你是个好孩子,这个游戏知之甚少,所以我介绍给你吧。

可以玩游戏由两个或两个以上的球员 。它由一个棋盘(棋盘)和一些棋子(棋子),所有的棋子标记的正整数或“开始”或“结束”。玩家从起始点和终点终于跳进。在跳跃的过程中,玩家将访问路径中的棋子,但每个人都必须从一个棋子跳跃到另一个绝对更大(可以假定启动点是一个最小和终点是一个最大)。所有玩家都可以不走回头路。一个跳跃到下一个棋子,也可以去跨越许多的棋子,甚至你可以从起始点到终点直线。当然,在这种情况下,你得到零点。一个球员是一个胜利者,当且仅当,他可以根据他跳的解决方案,获得更大的成绩。请注意,你的分数来自你跳路径上的棋子价值的总和,
你的任务是输出的最大值,根据给定的棋子列表。
原题链接:http://acm.hdu.edu.cn/showproblem.php?pid=1087
题目解析:简单的来说就是求一个序列中一组递增序列的最大和;
如:1,9,6 ,2 ,4,10,5,3,2
它的最大递增序列和为20,递增序列为1,9,10
和最大递增序列有点相似,但算法不太相同;
运行时间:
| 9139511 | Accepted | 1087 | 15MS | 432K | 856 B | C++ |
代码实现:
#include<stdio.h>
#include<cstring>
using namespace std;
#pragma comment(linker,"/STACK:102400000,102400000")
#define MAX 1005
int dp[MAX];//dp[i]存储与num[i]构成递增序列中和最大的一个;
int num[MAX];
int max(int a,int b)
{
return(a>b?a:b);
}
int main()
{
//freopen("input.txt","r",stdin);
int i,j,n;
while(scanf("%d",&n),n)
{
for(i=0;i<n;i++)
scanf("%d",&num[i]);
dp[0]=num[0];
int max1=0;
for(i=1;i<n;i++)
{
dp[i]=num[i];
for(j=0;j<i;j++)
{
if(num[i]>num[j])//找出比num[i]小的数num[j],dp[j]存储与num[j]构成递增序列中和最大的一个;所以加上num[i],也构成递增序列, {
if(dp[i]<dp[j]+num[i])//比较与num[i]能构成递增序列的这些序列和,找出最大的一个,
dp[i]=dp[j]+num[i];
}
}
max1=max(dp[i],max1);//max1为这些递增序列中和最大的一个;
}
printf("%d\n",max1);
}
return 0;
}
hdu1087Super Jumping! Jumping! Jumping!(最大递增序列和)的更多相关文章
- HDU 1087 Super Jumping! Jumping! Jumping! 最长递增子序列(求可能的递增序列的和的最大值) *
Super Jumping! Jumping! Jumping! Time Limit:1000MS Memory Limit:32768KB 64bit IO Format:%I64 ...
- ACM: Racing Gems - 最长递增序列
Racing Gems You are playing a racing game. Your character starts at the x axis (y = 0) and procee ...
- POJ 2533 Longest Ordered Subsequence 最长递增序列
Description A numeric sequence of ai is ordered if a1 < a2 < ... < aN. Let the subsequenc ...
- uva103(最长递增序列,dag上的最长路)
题目的意思是给定k个盒子,每个盒子的维度有n dimension 问最多有多少个盒子能够依次嵌套 但是这个嵌套的规则有点特殊,两个盒子,D = (d1,d2,...dn) ,E = (e1,e2... ...
- LeetCode 674. Longest Continuous Increasing Subsequence (最长连续递增序列)
Given an unsorted array of integers, find the length of longest continuous increasing subsequence. E ...
- UVA1619 栈维护递增序列
先说这题的关键性质:每一个数应该只会计算一次,它有一个最小区间[L,R],即它在这个区间内是最小的,最小区间内任何包含它的子区间都不会大于F(L,R)=(a[L]+...+a[R])*min(a[l] ...
- [LeetCode] Longest Continuous Increasing Subsequence 最长连续递增序列
Given an unsorted array of integers, find the length of longest continuous increasing subsequence. E ...
- [LeetCode] Number of Longest Increasing Subsequence 最长递增序列的个数
Given an unsorted array of integers, find the number of longest increasing subsequence. Example 1: I ...
- [Swift]LeetCode674. 最长连续递增序列 | Longest Continuous Increasing Subsequence
Given an unsorted array of integers, find the length of longest continuous increasing subsequence (s ...
随机推荐
- [Swust OJ 567]--老虎在不在笼子里(凸包问题)
题目链接:http://acm.swust.edu.cn/problem/567/ Time limit(ms): 1000 Memory limit(kb): 65535 一只老虎自从看了< ...
- Eclipse开启与关闭代码自动提示功能
Eclipse代码里面的代码提示功能默认是关闭的,只有输入“.”的时候才会提示功能,用vs的用户可能不太习惯 这种,vs是输入任何字母都会提示,下面说一下如何修改eclipse配置,开启代码自 ...
- Install TightVNC Server in RHEL/CentOS and Fedora to Access Remote Desktops
Virtual Networking Computing (VNC) is a Kind of remote sharing system that makes it possible to take ...
- Zabbix Step 1 : Install CentOS6.5 and Configration
[root@myzabbix Desktop]#rpm -ivh http://repo.zabbix.com/zabbix/2.2/rhel/6/x86_64/zabbix-release-2.2- ...
- PHP - FTP上传文件类
/** * 作用:FTP操作类( 拷贝.移动.删除文件/创建目录 ) * 时间:2006/5/9 * 作者:欣然随风 * QQ:276624915 */ class class_ftp { publi ...
- SecureCRT辅助解决方案
SecureCRT辅助解决方案 1. 下载SecureCRT 7.3版本并激活: 2. SecureCRT linux配色方案: 3. SecureCRT设置log保存方案: 1. secureCRT ...
- android4.0移植,拨号异常
D/dalvikvm( 2274): GC_CONCURRENT freed 206K, 12% free 6571K/7431K, paused 2ms+3ms D/dalvikvm( 2274): ...
- java Native 方法
一. 什么是Native Method 简单地讲,一个Native Method就是一个java调用非java代码的接口.一个Native Method是这样一个java的方法:该方法的实现由非j ...
- mysql备份数据库几种方法
方法一 cmd 到mysql bin文件夹下用 例如以下命令 mysqldump --opt -h192.168.0.156 -uusername -ppassword --skip-lock-tab ...
- Swift Error fatal error: unexpectedly found nil while unwrapping an Optional value
致命的错误: 对一个为空的optional值进行解包. 强制解包(forced unwrapping): 在optional后面加叹号. 比如 "value!" 错误代码: le ...