w[i,j]代表高度j,第i颗树的时候的最大值

那么w[i,j]:=max(w[i,j+1],w[k,j+heigh])+sum[i,j];

但是这样枚举是n^3的,我们发现转移的第二个选择w[k,j+heigh]与当前

第I颗树没有关系,所以记录一个高度为H的时候时的最大值直接O(1)转移就行了

我也不知道咋回事儿,pascal一直RE,一年前能A的代码现在还是RE,然后向管理员

联系了下,他们说数据没有问题,还把数据发过来了,一共5个点,最后一个点的in竟然

30MB。。。,挂接都挂不了。。。

/**************************************************************
    Problem:
    User: BLADEVIL
    Language: Pascal
    Result: Runtime_Error
****************************************************************/
 
//By  BLADEVIL
var
    n, h, d                     :longint;
    tree                        :array[..,..] of longint;
    w                           :array[..,..] of longint;
    p                           :array[..] of longint;
    i, j                        :longint;
    k                           :longint;
    ans                         :longint;
     
function max(a,b:longint):longint;
begin
    if a>b then max:=a else max:=b;
end;
     
begin
    readln(n,h,d);
    for i:= to n do
    begin
        read(tree[i,]);
        for j:= to tree[i,] do
        begin
            read(k);
            inc(tree[i,k]);
        end;
    end;
    for j:=h downto do
        for i:= to n do
        begin
            w[i,j]:=w[i,j+]+tree[i,j];
            if j+d<=h then w[i,j]:=max(w[i,j],p[j+d]+tree[i,j]);
            p[j]:=max(p[j],w[i,j]);
        end;
    ans:=-maxlongint;
    for i:= to n do ans:=max(ans,w[i,]);
    writeln(ans);
end.

bzoj 1270 DP的更多相关文章

  1. bzoj 3622 DP + 容斥

    LINK 题意:给出n,k,有a,b两种值,a和b间互相配对,求$a>b$的配对组数-b>a的配对组数恰好等于k的情况有多少种. 思路:粗看会想这是道容斥组合题,但关键在于如何得到每个a[ ...

  2. BZOJ 1270: [BeijingWc2008]雷涛的小猫( dp )

    简单的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 ...

  3. BZOJ 1270 雷涛的小猫 dp

    题目链接: https://www.lydsy.com/JudgeOnline/problem.php?id=1270 题目大意: 雷涛的小猫雷涛同学非常的有爱心,在他的宿舍里,养着一只因为受伤被救助 ...

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

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

  5. 51nod 1270 dp

    http://www.51nod.com/onlineJudge/questionCode.html#!problemId=1270 简单的线性dp,最近狂刷水题真的是...药丸 差值最大得话要么是峰 ...

  6. BZOJ - 1003 DP+最短路

    这道题被马老板毒瘤了一下,TLE到怀疑人生 //然而BZOJ上妥妥地过了(5500ms+ -> 400ms+) 要么SPFA太玄学要么是初始化block被卡到O(n^4) 不管了,不改了 另外D ...

  7. BZOJ 2431 & DP

    题意:求逆序对数量为k的长度为n的排列的个数 SOL: 显然我们可以对最后一位数字进行讨论,判断其已经产生多少逆序对数量,然后对于前n-1位同样考虑---->每一个长度的排列我们都可以看做是相同 ...

  8. bzoj 1791 DP

    首先对于一棵树我们可以tree_dp来解决这个问题,那么对于环上每个点为根的树我们可以求出这个树的一端为根的最长链,并且在tree_dp的过程中更新答案.那么我们对于环,从某个点断开,破环为链,然后再 ...

  9. bzoj 1592 dp

    就是dp啊 f[i][j]表示到第i位,最后一位高度是j的最小花费 转移::f[i][j]=minn(f[i-1][k])+abs(a[i]-num[j]);(k<=j) #include< ...

随机推荐

  1. Knockout.Js官网学习(数组observable)

    前言 如果你要探测和响应一个对象的变化,你应该用observables. 如果你需要探测和响应一个集合对象的变化,你应该用observableArray . 在很多场景下,它都非常有用,比如你要在UI ...

  2. 《Google 代码风格指南》

    <Google 代码风格指南> https://github.com/google/styleguide

  3. 360提供的SQL防注入

    <?php class sqlsafe { private $getfilter = "'|(and|or)\\b.+?(>|<|=|in|like)|\\/\\*.+?\ ...

  4. swiper 页面双向设置

    <!DOCTYPE html> <html lang="en"> <head> <meta charset="utf-8&quo ...

  5. php __clone需要注意的问题

      当一个对象的属性是另外一个对象时,当有一个对象复制该对象时,当复制到这个属性(一个对象)时,只复制这个属性(对象)的引用,而不复制引用的对象. class Account{ public $bal ...

  6. Delphi7中编译提示“Unsafe type 'PChar'”的原因及处理办法

    delphi7中加入了对.net的支持 在.net中是没有指针的(托管环境中),所以指针都是不安全的,不符合.net规范 所以d7里有警告,可以不管它 DELPHI7已经考虑到了移植到点NET的问题, ...

  7. 为了android sdk下载,必须修改hosts

    #Download 下载 203.208.46.146 dl.google.com 203.208.46.146 dl-ssl.google.com #Groups 203.208.46.146 gr ...

  8. bat隐藏文件夹

    在windows中隐藏文件是可以隐藏,但是下面红色区域一旦选中,那也就显示出来了 现在有如下代码,可以实现个性化隐藏 ========================================= ...

  9. [Environment Build] Win10下Appach配置

    1. Apache下载,登录http://httpd.apache.org/download.cgi,选择Files for Microsoft Windows, 有以下几个选择, 我选择的是Apac ...

  10. hdu 1269 迷宫城堡

    题目连接 http://acm.hdu.edu.cn/showproblem.php?pid=1269 迷宫城堡 Description 为了训练小希的方向感,Gardon建立了一座大城堡,里面有N个 ...