This commit is contained in:
1 parent
197cb84114
commit
fc3d90c48a
1 file changed
+16
@@ -0,0 +1,16 @@
|
||||
# P2016 [SEERC 2000] 战略游戏 题解
|
||||
|
||||
题意:给你一棵树,要求选中一些点,使得每条边至少一个端点被选中。
|
||||
|
||||
令 $dp_{i, 01}$ 表示以 $i$ 为根的子树,是否选中该节点的最少选中节点数。易得:
|
||||
|
||||
$$
|
||||
\begin{aligned}
|
||||
f_{i, 0} =& \sum f_{u, 1} (u \in child_i) \\
|
||||
f_{i, 1} =& \sum \min(dp_{u, 0}, dp_{u, 1})
|
||||
\end{aligned}
|
||||
$$
|
||||
|
||||
树形 dp 即可。
|
||||
|
||||
[code](../P2016.cpp)
|
||||
Reference in new issue
Block a user