pjudge A. 【NOIP Round #6】抉择

原题

这题和绝世好题有异曲同工之妙(虽然赛时也想到了但并没有发现贪心结论 QwQ )

首先容易想出 \(O(n^2)\) 的 dp :设 \(dp_i\) 表示前 \(i\) 个数 \(i\) 强制选最大值,然后转移枚举上一个选的是什么

优化转移,如果 \(i,j\) 之间有一个 \(k(i<k<j)\) ,且 \(a_i\&a_k\) 的最高位和 \(a_i\&a_j\) 相同,那么选上 \(a_k\) 一定更优,枚举 \(a_i\&a_j\) 的最高位,找到前面第一个这一位是 \(1\) 的数转移就行

最终复杂度 \(O(n \log V)\)

posted @ 2023-10-15 14:10  FOX_konata  阅读(34)  评论(0编辑  收藏  举报