题目大意:一个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. Matlab神经网络工具箱学习之二

    螃蟹的分类 这个例子的目的是根据螃蟹的品种.背壳的长宽等等属性来判断螃蟹的性别,雄性还是雌性. 训练数据一共有六个属性: species, frontallip, rearwidth, length, ...

  2. matlab 已知函数值纵坐标值(Y值)获得对应的横坐标

    clear all;clc; x=-pi/2:pi/50:pi; y=sin(x); plot(x,y); grid on; fm=max(y) id=find(y==fm); xm=x(id) 转自 ...

  3. jq中阻止元素的默认行为

    event.preventDefault();//阻止元素的默认行为

  4. eclipse template里面的${user}更改

    打开eclipse目录下的eclipse.ini文件,添加上一行 -Duser.name="whateveryouwant" 这样在eclipse中的${user}变量的值就变成了 ...

  5. JS初学之-循环生成坐标

    <!doctype html><html><head><meta charset="utf-8"><title>无标题文 ...

  6. Android——复选按钮和开关按钮

    复选按钮和开关按钮代码如下: <LinearLayout android:layout_width="match_parent" android:layout_height= ...

  7. HDU-4089 Activation (概率DP求概率)

    题目大意:一款新游戏注册账号时,有n个用户在排队.每处理一个用户的信息时,可能会出现下面四种情况: 1.处理失败,重新处理,处理信息仍然在队头,发生的概率为p1: 2.处理错误,处理信息到队尾重新排队 ...

  8. 对象的引用和clone

    $a=new s(); $b=$a; 这是引用,两者为同一个实例 $a=new s(); $b=$a; $b=clone $a; 这是clone,两者不是同一个实例,但拥有相同的属性 如果需要不相同的 ...

  9. Maximum number of WAL files in the pg_xlog directory (1)

      Guillaume Lelarge: Hi, As part of our monitoring work for our customers, we stumbled upon an issue ...

  10. 012. asp.net生成验证码图片(汉字示例/字母+数字)

    protected void Page_Load(object sender, EventArgs e) { //生成验证码图片的基本步骤 string checkCode = "新年快乐& ...