CF1118F2 - Tree Cutting 题意:给你一棵树,每个点被染成了k种颜色之一或者没有颜色.你要切断恰k - 1条边使得不存在两个异色点在同一连通块内.求方案数. 解:对每颜色构建最小斯坦纳树并判交.我用的树上差分实现. 然后把同一颜色的点缩成一个点,在新树上树形DP,fx表示x子树内,x所在连通块内有一个关键点的方案数.hx表示x所在连通块内没有关键点的方案数. #include <bits/stdc++.h> , MO = ; struct Edge { int nex, v…