题目大意:一个n+1行m+1列的表格,每个格子两个数w和c,表示经过该格子的happy和体力消耗值tireness。现在从最下面任意处开始,可以向左向右向上走。但不能向下。每个格子不能经过两次。在每一行消耗的体力不能超过k。问能得到最多的happy值是多少。

n<=100,m<=10000,k<=3000000

分析:明显是一个dp问题。设f[i][j]表示在当前走到第i行第j个格子是能够得到的最大的happy值。f[i][j]=max(f[i-1][p]+sumh(p,j))  (sumt(p,j)<=k)

sumh(p,j)表示p到j的happy值之和,sumt表示p到j的消耗体力值之和。

对每一行的happy消耗值求前缀和,用一个递增的单调队列保存sumh。对于该行的第j个格子,则可以在O(1)的时间内找到左边sumh最小的格子p,从而使得sumh[j]-sumh[p]最大,即从格子p+1到格子j的happy值之和最大。

格子j的右边可以类似的处理。

于是总的事件复杂度为O(n,m)。

HDU2490 parade的更多相关文章

  1. HDOJ 2389 Rain on your Parade

     HK.... Rain on your Parade Time Limit: 6000/3000 MS (Java/Others)    Memory Limit: 655350/165535 K ...

  2. Rain on your Parade

    Rain on your Parade Time Limit: 6000/3000 MS (Java/Others)    Memory Limit: 655350/165535 K (Java/Ot ...

  3. Gym 100818I Olympic Parade(位运算)

    Olympic Parade http://acm.hust.edu.cn/vjudge/contest/view.action?cid=101594#problem/I [题意]: 给出N个数,找出 ...

  4. USACO 3.3 TEXT Eulerian Tour中的Cows on Parade一点理解

    Cows on Parade Farmer John has two types of cows: black Angus and white Jerseys. While marching 19 o ...

  5. Parade

    Parade time limit per test 1 second memory limit per test 256 megabytes input standard input output ...

  6. HDU 2389 Rain on your Parade / HUST 1164 4 Rain on your Parade(二分图的最大匹配)

    HDU 2389 Rain on your Parade / HUST 1164 4 Rain on your Parade(二分图的最大匹配) Description You're giving a ...

  7. Codeforces 378B. Parade

    B. Parade time limit per test 1 second memory limit per test 256 megabytes input standard input outp ...

  8. Parade(单调队列优化dp)

    题目连接:http://acm.hdu.edu.cn/showproblem.php?pid=2490 Parade Time Limit: 4000/2000 MS (Java/Others)    ...

  9. CodeForces 733B Parade

    B. Parade time limit per test1 second memory limit per test256 megabytes inputstandard input outputs ...

随机推荐

  1. vimrc配置文件_version1.0_+pathogen, taglist, wordcomplete插件说明

    为了表示对Ruchee的感谢,首先这是Ruchee的个人网站:http://www.ruchee.com/index.html,他的以前很多的代码都放到Git里面了,里面有链接. 看了整整一天,刚开始 ...

  2. HDU 2085 核反应堆 --- 简单递推

    HDU 2085 核反应堆 /* HDU 2085 核反应堆 --- 简单递推 */ #include <cstdio> ; long long a[N], b[N]; //a表示高能质点 ...

  3. scala言语基础学习

    scala变长参数: 递归累加: scala异常的使用: array和arraybuffer的使用 定长array: arraybuff:

  4. 恢复Ext3下被删除的文件(转)

    恢复Ext3下被删除的文件(转) 前言 下面是这个教程将教你如何在Ext3的文件系统中恢复被rm掉的文件. 删除文件 假设我们有一个文件名叫 ‘test.txt’ $ls -il test.txt 1 ...

  5. (转) An overview of gradient descent optimization algorithms

    An overview of gradient descent optimization algorithms Table of contents: Gradient descent variants ...

  6. ceph

    http://docs.ceph.com/docs/master/radosgw/swift/java/

  7. exceptions-in-java

    http://www.javaworld.com/article/2076721/core-java/designing-with-exceptions.html http://www.javawor ...

  8. Thinking Clearly about Performance

    http://queue.acm.org/detail.cfm?id=1854041 The July/August issue of acmqueue is out now acmqueue is ...

  9. Caffe-windows上训练自己的数据

    1.数据获取 在网上选择特定类别,下载相应的若干张图片.可以网页另存或者图片下载器.本例中保存了小狗.菊花.梅花三类各两百多张. 2.重命名 import os import os.path root ...

  10. Apache安全配置方案

    Apache安全配置方案 from:http://drops.wooyun.org/%e8%bf%90%e7%bb%b4%e5%ae%89%e5%85%a8/2727 apache的一些配置主要是通过 ...