「刷题」小星星

我很久以前就做过这道题,但是当时没有想出来于是扔掉了(在状压dp那块),今天被学长重新拿出来再讲一次,终于有了点思路。

先讲一下暴力思路,说是暴力也很难想了。设dp[i][j][s]为以树上编号为i的点为子树,i对应原图的j的,s是i的子树中包含对应原图中的点状态为s的方案数。

那么写一下式子。

$ dp[i][j][s]= \sum \limits_t^{t|s=\phi} \sum \limits_{v,v\notin s}^{e(j,v)} \sum \limits_t^{t\in{son[i]}}dp[t][v][t] $

也就是说枚举s的补集和与j相连的v以及i的儿子t来进行转移,

时间复杂度是 $ O(3^n n^2) $ 会炸掉。

关于补集的复杂度是$ 3^n $ 的证明。

猜你喜欢

转载自www.cnblogs.com/Lrefrain/p/11234363.html