动态规划专题(二)——树形DP

版权声明:此文为作者原创,若觉得写得好请点个赞再离开。当然,也欢迎在讨论区指出本文的不足,作者会及时加以改正。转载请注明地址: https://blog.csdn.net/chenxiaoran666/article/details/82859031

前言

D P DP 这东西真的是博大精深啊…


简介

树形 D P DP ,顾名思义,就是在树上操作的 D P DP ,一般可以用 f i f_i 表示以编号为 i i 的节点为根的子树中的最优解。

转移的时候一般都将信息由子节点转移到父亲节点,也就是将信息从下往上转移。

因此,一般树形 D P DP 都会采用 递归 的形式。


几道例题

好吧, D P DP 好像也没什么东西可讲,这样介绍得还是不够具体。干脆直接看例题来理解一下吧。

第一道例题: 【51nod1299】监狱逃离

这题是一道挺有意思的树形 D P DP 题,我们可以考虑用 f f 数组来记录每一个节点的状态:完全封死可以从这个节点到达叶子节点有犯人可以到达该节点,然后就不难统计出答案了。

第二道例题: 【BZOJ4033】[HAOI2015] 树上染色

比较经典的树形 D P DP 题。这道题最值得注意的地方不是 D P DP 过程,而是注意在一棵有 n n 个节点的树上将 m m 个节点染成黑色与将 n m n-m 个节点染成黑色其实是等价的,不加上这个优化就会 T L E TLE

第三道例题: 【BZOJ1040】[ZJOI2008] 骑士

一道恶心的基环外向树 D P DP ,应该是比较模板的吧。

L i n k Link

【51nod1299】监狱逃离 的题解 详见博客 【51nod1299】监狱逃离(树形DP)

【BZOJ4033】[HAOI2015] 树上染色 的题解 详见博客 【BZOJ4033】[HAOI2015] 树上染色(树形DP)

【BZOJ1040】[ZJOI2008] 骑士 的题解 详见博客 【BZOJ1040】[ZJOI2008] 骑士(基环外向树DP)

猜你喜欢

转载自blog.csdn.net/chenxiaoran666/article/details/82859031
今日推荐