简单的dp..

dp(i,j) = max(dp(x,y))+cnt[i][j], (x,y)->(i,j)是合法路径.

设f(i)= max(dp(x,y))(1≤x≤N, 1≤y≤i), g(i,j) = max(dp(i, k))(1≤k≤j)

那么dp(i,j) =  max(f(j+delta), g(i,j+1))+cnt[i][j]. 递推即可. 时间复杂度O(NH)

-----------------------------------------------------------------------

#include<bits/stdc++.h>
 
using namespace std;
 
const int maxn = 2009;
 
int N, H, delta, cnt[maxn][maxn];
int dp[maxn][maxn], f[maxn], g[maxn][maxn];
 
void init() {
scanf("%d%d%d", &N, &H, &delta);
memset(cnt, 0, sizeof cnt);
for(int i = 0; i < N; i++) {
int t; scanf("%d", &t);
while(t--) {
int h; scanf("%d", &h);
cnt[i][h]++;
}
}
}
 
void work() {
f[H] = 0;
for(int i = 0; i < N; i++)
   f[H] = max(f[H], dp[i][H] = g[i][H] = cnt[i][H]);
for(int h = H; --h; ) {
f[h] = f[h + 1];
   for(int i = 0; i < N; i++) {
    int t = g[i][h + 1];
    g[i][h] = t;
    if(h + delta <= H) t = max(t, f[h + delta]);
    dp[i][h] = t + cnt[i][h];
    f[h] = max(f[h], dp[i][h]);
    g[i][h] = max(g[i][h], dp[i][h]);
   }
}
int ans = 0;
for(int i = 0; i < N; i++)
   ans = max(ans, dp[i][1]);
printf("%d\n", ans);
}
 
int main() {
init();
work();
return 0;
}

-----------------------------------------------------------------------

1270: [BeijingWc2008]雷涛的小猫

Time Limit: 50 Sec  Memory Limit: 162 MB
Submit: 1004  Solved: 483
[Submit][Status][Discuss]

Description

 

Input

Output

Sample Input

Sample Output

8

HINT

Source

BZOJ 1270: [BeijingWc2008]雷涛的小猫( dp )的更多相关文章

  1. bzoj 1270: [BeijingWc2008]雷涛的小猫 简单dp+滚动数组

    1270: [BeijingWc2008]雷涛的小猫 Time Limit: 50 Sec  Memory Limit: 162 MB[Submit][Status][Discuss] Descrip ...

  2. [bzoj 1270][BeijingWc2008]雷涛的小猫

    Description 雷涛的小猫雷涛同学非常的有爱心,在他的宿舍里,养着一只因为受伤被救助的小猫(当然,这样的行为是违反学 生宿舍管理条例的).  在他的照顾下,小猫很快恢复了健康,并且愈发的活泼可 ...

  3. 【BZOJ1270】1270: [BeijingWc2008]雷涛的小猫 DP

    Description   Input Output Sample Input Sample Output 8 HINT Source 唉这么蠢的Dp没一下子看出来,Dp真是太弱了啦. #includ ...

  4. 1270: [BeijingWc2008]雷涛的小猫

    1270: [BeijingWc2008]雷涛的小猫 Time Limit: 50 Sec  Memory Limit: 162 MBSubmit: 905  Solved: 430[Submit][ ...

  5. bzoj1270 BeijingWc2008 雷涛的小猫 DP

    题目链接:http://www.lydsy.com/JudgeOnline/problem.php?id=1270 比较水的一道dp f1[i]为高度为i的时候的最大值 f2[i]为当前高度在第i棵树 ...

  6. B1270 [BeijingWc2008]雷涛的小猫 dp

    这个题的原始方法谁都会,但是n^3会T.之后直接优化,特别简单,就是每次处理出来每层的最大值,而不用枚举.之前没这么做是因为觉得在同一棵树的时候没有下落,所以不能用这个方法.后来想明白了,在同一棵树上 ...

  7. 【BZOJ】1270: [BeijingWc2008]雷涛的小猫(DP+水题)

    http://www.lydsy.com/JudgeOnline/problem.php?id=1270 这完全是一眼题啊,但是n^2的时间挺感人.(n^2一下的级别请大神们赐教,我还没学多少dp优化 ...

  8. 【BZOJ】1270 [BeijingWc2008]雷涛的小猫

    [算法]DP [题解]f1[i]表示第i棵树当前高度能得到的最多果子数 f2[i]表示高度i能得到的最多果子数. 于是有: f1[j]=max(f1[j],f2[i+delta])+mp[j][i]; ...

  9. 【bzoj1270】[BeijingWc2008]雷涛的小猫 dp

    题目描述   输入 输出 样例输入 样例输出 8 题解 dp 设f[i][j]表示在第i棵树的j高度时最多吃到的柿子数. 那么只有两种可能能够到达这个位置:滑下来.跳下来. 滑下来直接用f[i][j+ ...

随机推荐

  1. iphone手机上的click和touch

    在iphone手机上绑定click事件时,当你触发点击事件时,你绑定的click事件的DOM节点,会自动被一块浮层选中.所以如果使用事件委托来做事件绑定会造成很差的用户体验. 使用touchstart ...

  2. Eclipse+ADT的环境搭建

    Index: . Java环境变量的设置 . Android环境变量的设置 1.Java环境变量的设置 A.属性名称:JAVA_HOME 属性值:C:\Program Files\Java\jdk1. ...

  3. Delphi调试DLL 不能调试 不能进入调试 注意!!!

    如何调试DLL,在这里就不再赘述了,但是,今天就碰到了一个特别奇怪的问题,参数设置正确,就是不能调试?? 通过上网查资料,发现了问题,注意: 1, 将Project主菜单的Project Option ...

  4. zookeeper 数据存储特点

    zookeeper 和elasticseaarch 数据存储特点: 1.zookeeper; [Zookeeper提供的一致性是弱一致性,首先数据的复制有如下规则:zookeeper确保对znode树 ...

  5. What is a good EPUB reader on Linux

    Last updated on August 20, 2014 Authored by Adrien Brochard 12 Comments If the habit on reading book ...

  6. Just another Robbery(背包)

    1079 - Just another Robbery   PDF (English) Statistics Forum Time Limit: 4 second(s) Memory Limit: 3 ...

  7. c语言编写经验逐步积累4

    寥寥数笔,记录我的C语言盲点笔记,仅仅为以前经历过,亦有误,可交流. 1.逻辑表达式的使用 取值 = 表达式 ? 表达式1:表达式2: 比方x = y > z ? y:z 2."+,- ...

  8. golang语法学习(一):变量,常量以及数据类型

    学习一门新的语言肯定是要从他的主要的语法開始,语法构成了整个程序设计的基础,从语法中我们也能够看到这门语言的一些特性.可是话说回来.语法这东西,不同的语言大同小异,所以这也对语法的记忆造成了一定的难度 ...

  9. Cocos2d-x 3.0 使用TinyXml 解析XML文件

    在cocos2d-x 3.0中Xml解析已经不用自己找库了,已经为我们集成好了. text.xml <!--?xml version ="1.0" encoding =&qu ...

  10. 移动开发语言Swift

    苹果公布了全新的编程语言Swift,Swift继承了Objective-C语言特性,并从Python和Java Script中长处,使Swift更易读.未来swift编程语言的会特大广大的使用 Swi ...