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