Description
有一棵苹果树,如果树枝有分叉,一定是分2叉(就是说没有只有1个儿子的结点)。这棵树共有N个结点(叶子点或者树枝分叉点),编号为1-N,树根编号一定是1。
我们用一根树枝两端连接的结点的编号来描述一根树枝的位置。下面是一颗有4个树枝的树:

现在这颗树枝条太多了,需要剪枝。但是一些树枝上长有苹果。
给定需要保留的树枝数量,求出最多能留住多少苹果。
Input
第1行2个数,N和Q(1<=Q<= N,1<N<=100)N表示树的结点数,Q表示要保留的树枝数量。接下来N-1行描述树枝的信息。
每行3个整数,前两个是它连接的结点的编号。第3个数是这根树枝上苹果的数量。
每根树枝上的苹果不超过30000个。
Output
一个数,最多能留

这是一道关于树形动态规划的题目,涉及一棵特殊的二叉树,其每个节点要么是叶子节点,要么有两个子节点。问题要求在保留一定数量树枝的前提下,计算最多能保留多少个苹果。输入包括树的节点数、需要保留的树枝数以及树枝连接的节点编号和所带苹果数。输出是最大可保留的苹果数。样例输入输出展示了问题的具体形式。
最低0.47元/天 解锁文章
6万+

被折叠的 条评论
为什么被折叠?



