P8867 [NOIP2022] 建造军营 题解

· · 个人记录

原题

发现只有割边被切断才会有影响。于是缩边双。

f_uu 子树中选至少一点的方案数。

显然 f_u 初始为 2^{E_u+V_u}E_u 为边的个数,V_u 为点的个数。

那么 v \in \text{son}_u 的贡献就是:

由于最少选一点,所以最后要减去 2^{sum_u}

对答案的贡献:此时不能选到父亲的边(会算重),其他边随便选,即 \sum_{u=1}^n f(u) \cdot 2^{m-sum_u-[fa_u]}