Loading

P3694 邦邦的大合唱站队

\(\text{solution}\)

妙妙的状压 DP(指忽然脑子开窍——会做了)。

首先目标状态肯定是分成若干连续颜色段,我们考虑对于这些段进行状压。

考虑状压当前用了哪些颜色段,然后我们枚举上一次用得哪一段,然后看把这一段覆盖后,有多少个人是不在这个颜色段里的就行了,维护一个前缀和数组,再维护一个颜色个数数组就行了。

但是这道题我认为可以用 \(\text{lowbit}\) 做到更优的复杂度,其总时间复杂度为 \(O(m)\)\(m\)\(0 \sim 2^{m} - 1\) 二进制中 \(1\) 的个数。

posted @ 2023-06-02 09:46  Alexande  阅读(8)  评论(0)    收藏  举报