「Luogu2015」 二叉苹果树 - 树形DP
Posted at 17-8-17 10:30, Updated at 19-10-16 21:59
题目链接:传送门
Description
有一棵苹果树,如果树枝有分叉,一定是分2叉(就是说没有只有1个儿子的结点) 这棵树共有N个结点(叶子点或者树枝分叉点),编号为1-N,树根编号一定是1。 我们用一根树枝两端连接的结点的编号来描述一根树枝的位置。下面是一颗有4个树枝的树 2 5 \ / 3 4 \ / 1 现在这颗树枝条太多了,需要剪枝。但是一些树枝上长有苹果。 给定需要保留的树枝数量,求出最多能留住多少苹果。
Solution
这又是一道树形DP的经典题目。 我们设
TeX parse error: Undefined control sequence \[
表示以x为节点的根保留j条树枝的最大值,k表示枚举y子树保留k根树枝,那么有:
TeX parse error: Undefined control sequence \[
我们只需要dfs一遍,枚举j和k即可
Code
1 |
|