题意:求最大升序和。

题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=1087

——>>设d[i]表示以第i个数为终点的最大升序和,然后从第1个数到第i-1个数为终点的最大升序和进行检查,向后递推即可。

#include <iostream>
#include <algorithm>using namespace std;int main()
{int N, a[1010], i, j;long long d[1010];      //d[i]表示以第i个数为终点的最大升序和while(cin>>N){if(!N) return 0;for(i = 1; i <= N; i++){cin>>a[i];d[i] = a[i];        //最小为其自己,无左拓展}long long max_sum = a[1];       //最大升序和存进max_sumfor(i = 2; i <= N; i++)     //第1个一定是它自己,故从第2个数开始for(j = 1; j < i; j++){if(a[j] < a[i]) d[i] = max(d[i], d[j]+a[i]);        //如果是升序,更新max_sum = max(max_sum, d[i]);       //更新}cout<<max_sum<<endl;}return 0;
}

今天用Java做了一次:

import java.util.Scanner;
public class Main {static final int maxn = 1000 + 10;public static void main(String[] args) {Scanner cin = new Scanner(System.in);int N, a[] = new int[maxn];long d[] = new long[maxn];while(cin.hasNextInt()){N = cin.nextInt();if(N == 0) break;for(int i = 1; i <= N; i++) d[i] = a[i] = cin.nextInt();long max = -1;for(int i = 1; i <= N; i++)for(int j = 1; j < i; j++){if(a[j] < a[i] && d[i] < d[j]+a[i]) d[i] = d[j]+a[i];if(d[i] > max) max = d[i];}System.out.println(max);}cin.close();}
}

转载于:https://www.cnblogs.com/xiaodanding/archive/2013/01/31/3266898.html

hdu - 1087 - Super Jumping! Jumping! Jumping!相关推荐

  1. hdu 1087 Super Jumping! Jumping! Jumping!

    Nowadays, a kind of chess game called "Super Jumping! Jumping! Jumping!" is very popular i ...

  2. hdu 1087 Super Jumping! Jumping! Jumping! 动态规划

    Super Jumping! Jumping! Jumping! Time Limit : 2000/1000ms (Java/Other)   Memory Limit : 65536/32768K ...

  3. DP专题训练之HDU 1087 Super Jumping!

    Description Nowadays, a kind of chess game called "Super Jumping! Jumping! Jumping!" is ve ...

  4. hdu 1087 Super Jumping! Jumping! Jumping!

    Nowadays, a kind of chess game called "Super Jumping! Jumping! Jumping!" is very popular i ...

  5. HDU 1087 Super Jumping! Jumping! Jumping!【最大递增子段和】

    Problem Description Nowadays, a kind of chess game called "Super Jumping! Jumping! Jumping!&quo ...

  6. 最长上升子序列模板 hdu 1087 Super Jumping! Jumping! Jumping!

    Nowadays, a kind of chess game called "Super Jumping! Jumping! Jumping!" is very popular i ...

  7. HDU 1087 [Super Jumping! Jumping! Jumping!]动态规划

    题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=1087 题目大意:有N个格子,每个格子有数值.从原点开始跳,可以跳到任何一个位置:在某一个位置,只能跳到 ...

  8. HDU 1087 Super Jumping! Jumping! Jumping! (最长上升子序列的变形,子序列值最大)

    题意 wsw获得了与小姐姐约会的机会,同时也不用担心wls会发现了,可是如何选择和哪些小姐姐约会呢?wsw希望自己可以循序渐进,同时希望挑战自己的极限,我们假定每个小姐姐有一个"攻略难度值& ...

  9. Super Jumping! Jumping! Jumping! HDU - 1087

    Super Jumping! Jumping! Jumping! HDU - 1087 题意: 给定一条长度为n的序列,其中一定存在一条元素和最大的严格上升子序列,求这条序列的元素和. 题解: 最长上 ...

最新文章

  1. php psr2规范,PhpStorm集成PSR2代码自动检查 | 吴文辉博客
  2. eoiioe IE 和 firefox js 兼容问题
  3. Andrej Karpathy发文谈神经网络后,引发的对硬件,软件和学件的思考
  4. 你有没有想过: 为什么Java中String是不可变的?
  5. PHP的方法重载实现
  6. UVa 389 Basically Speaking
  7. [javascript]JS获取当前时间戳的方法
  8. Centos7 上安装mysql遇上的问题:mysql无法正常启动
  9. ByteArray、16进制、字符串之间的转换
  10. 如何拷贝工程_如何将premiere的工程及素材文件打包?
  11. 如何在ubuntu上用c++串口通信_让你搞懂PLC串口通讯和通讯接口,这东西估计没几个能说清楚~...
  12. android 方法统计,Android 利用编译时 注入 统计App内所有方法执行时常,分析ANR
  13. java如何引用类_java – 如何引用当前类的类?
  14. 源码-0105-Autoresizing
  15. shell脚本----for循环-转 Syntax error: Bad for loop variable
  16. java 类 比较大小_java 类比较大小(实现Comparable接口)
  17. Android—Socket服务端与客户端用字符串的方式互相传递图片
  18. android怎么改名字,手把手教你如何修改安卓软件的图标和名字
  19. 教你查看预装Win8电脑内置系统激活密钥(Win8 OEM Key)
  20. 小白入门python教程自学python

热门文章

  1. quickselect_QuickSelect:使用代码示例解释的快速选择算法
  2. 完成工作表-使用Google Spreadsheets作为数据后端
  3. FIRST集与FOLLOW集构造步骤
  4. Java零基础学习难吗
  5. C#Hello World
  6. a标签是什么意思 怎么使用?
  7. WSUS Troubleshooting guide
  8. 《Android应用开发攻略》——1.3 从命令行创建 “Hello, World”应用程序
  9. Sunrun2016年Q3财务业绩强劲 冲刺全年目标
  10. zabbix   微信报警( python 2.x )