#P2015. 二叉苹果树

    ID: 964 Type: RemoteJudge 1000ms 125MiB Tried: 0 Accepted: 0 Difficulty: 4 Uploaded By: Tags>动态规划,dp树形数据结构树形 dp

二叉苹果树

题目描述

有一棵苹果树,如果树枝有分叉,一定是分二叉(就是说没有只有一个儿子的结点)

这棵树共有 NN 个结点(叶子点或者树枝分叉点),编号为 1N1 \sim N,树根编号一定是 11

我们用一根树枝两端连接的结点的编号来描述一根树枝的位置。下面是一颗有 44 个树枝的树:

2   5
 \ / 
  3   4
   \ /
    1

现在这颗树枝条太多了,需要剪枝。但是一些树枝上长有苹果。

给定需要保留的树枝数量,求出最多能留住多少苹果。

输入格式

第一行 22 个整数 NNQQ,分别表示表示树的结点数,和要保留的树枝数量。

接下来 N1N-1 行,每行 33 个整数,描述一根树枝的信息:前 22 个数是它连接的结点的编号,第 33 个数是这根树枝上苹果的数量。

输出格式

一个数,最多能留住的苹果的数量。

5 2
1 3 1
1 4 10
2 3 20
3 5 20

21

提示

1Q<N1001 \leqslant Q < N \leqslant 100,每根树枝上的苹果 3×104\leqslant 3 \times 10^4