摘要: 题目大意:将一棵n个节点的有根树,删掉一些边变成恰有m个节点的新树。求最少需要去掉几条边。 题目分析:定义状态dp(root,k)表示在以root为根节点的子树中,删掉一些边变成恰有k个节点的新树需要删去的最少边数。对于根节点root的某个儿子son,要么将son及其所有的子节点全部删掉,则dp(r 阅读全文
posted @ 2016-04-02 23:36 20143605 阅读(1103) 评论(3) 推荐(0) 编辑
摘要: 题目大意:给一棵有根带点权树,并且给出容量。求在不超过容量下的最大权值。前提是选完父节点才能选子节点。 题目分析:树上的分组背包。 ps:特判m为0时的情况。 代码如下: 阅读全文
posted @ 2016-04-02 21:32 20143605 阅读(137) 评论(0) 推荐(0) 编辑
摘要: 题目大意:给一棵带边权的有根树,每个叶子节点有权。边权表示代价,叶子节点的权值代表可以补偿多少代价。问从根节点最多可以到达多少个叶子,使得付出的总代价不大于0。 题目分析:定义状态dp(u,k)表示从u开始到达k个叶子所花费的最小代价。则状态转移方程为: dp(u,k)=min(dp(u,k),dp 阅读全文
posted @ 2016-04-02 11:50 20143605 阅读(329) 评论(0) 推荐(0) 编辑