不妨设集合 $S$ 是红色的,枚举蓝色子集的并 $T$,则可以得到 DP 方程 $dp_R(S)=\min_{T\sub S}\{dp_B(S)+\sum_{X\subseteq S,X\not\subseteq T} R_X\}$。若 $S$ 是蓝色的则同理。这样的时间复杂度是 $O(3^n)$。
可以发现,我们可以每次只让集合大小 $+1$,且不要求颜色不同,而结果是相同的。时间复杂度 $O(2^nn)$。
Type: Editorial
Status: Open
Posted by: jiangly
Posted at: 2025-12-13 00:15:20
Last updated: 2025-12-13 00:15:22
不妨设集合 $S$ 是红色的,枚举蓝色子集的并 $T$,则可以得到 DP 方程 $dp_R(S)=\min_{T\sub S}\{dp_B(S)+\sum_{X\subseteq S,X\not\subseteq T} R_X\}$。若 $S$ 是蓝色的则同理。这样的时间复杂度是 $O(3^n)$。
可以发现,我们可以每次只让集合大小 $+1$,且不要求颜色不同,而结果是相同的。时间复杂度 $O(2^nn)$。