4282 - 树形动态:二叉苹果树(树形背包DP)
时间限制 : 1 秒
内存限制 : 128 MB
有一棵二叉苹果树,如果数字有分叉,一定是分两叉,即没有只有一个儿子的节点。这棵树共 N 个节点,标号 1 至 N,树根编号一定为 1。我们用一根树枝两端连接的节点编号描述一根树枝的位置。一棵有四根树枝的苹果树,因为树枝太多了,需要剪枝。但是一些树枝上长有苹果,给定需要保留的树枝数量,求最多能留住多少苹果。

输入
第一行两个数 N 和 Q ,N 表示树的节点数,Q 表示要保留的树枝数量。
接下来 N−1 行描述树枝信息,每行三个整数,前两个是它连接的节点的编号,第三个数是这根树枝上苹果数量。
输出
输出仅一行,表示最多能留住的苹果的数量。
样例
输入
5 2 1 3 1 1 4 10 2 3 20 3 5 20
输出
21
提示
数据范围与提示:
对于 100% 的数据,1≤Q≤N≤100,N≠1,每根树枝上苹果不超过 30000 个。