洛谷2015 二叉苹果树 树形DP
生活随笔
收集整理的這篇文章主要介紹了
洛谷2015 二叉苹果树 树形DP
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
https://www.luogu.org/problemnew/show/P2015
二叉蘋果樹
時間限制:?1 Sec??內存限制:?128 MB
題目描述
有一棵蘋果樹,如果樹枝有分叉,一定是分 2 叉(就是說沒有只有 1 個兒子的結點)
這棵樹共有 N 個結點(葉子點或者樹枝分叉點),編號為 1 - N 樹根編號一定是 1。
我們用一根樹枝兩端連接的結點的編號來描述一根樹枝的位置。下面是一棵有 4 個樹枝的樹
2 5\ / 3 4\ /1現在這顆樹枝條太多了,需要剪枝。但是一些樹枝上長有蘋果。
給定需要保留的樹枝數量,求出最多能留住多少蘋果。
輸入
輸入包含多組測試數據。
對于每一組測試樣例:
第 1 行有 2 個數,N 和 Q(1 <= Q <= N,1 < N <= 100)。
N 表示樹的結點數,Q 表示要保留的樹枝數量。接下來 N-1 行描述樹枝的信息。
每行 3 個整數,前兩個是它連接的結點的編號。第 3 個數是這根樹枝上蘋果的數量。
每根樹枝上的蘋果不超過 30000 個。
輸出
一個數,最多能留住的蘋果的數量。
樣例輸入
5 2 1 3 1 1 4 10 2 3 20 3 5 20樣例輸出
21分析:
狀態表示:dp[i][j]表示子樹i,保留j個節點的最大權值
每條邊的權值,可以看作是兒子的權值,那么就可以對所有的子樹做分組背包,即每個子樹可以選則1,2..j-1條邊分配給它
?
總結
以上是生活随笔為你收集整理的洛谷2015 二叉苹果树 树形DP的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: POJ1185 炮兵阵地 状压DP
- 下一篇: HDU4825 Xor Sum 01字典