Loading

AT_arc173_e [ARC173E] Rearrange and Adjacent XOR

好家伙,标签一出来给我假完了。

刚开始以为是拆位对于每一位的每一层去做贪心,结果发现假了。

有一个很显然的性质是,答案一定由原序列若干个数异或得到,现在我们需要观察这些数有什么性质。

我们再仔细一想,如果这些数是和位置有关的话,由于我可以任意排列整个序列,那么交换两个位置同样合法,也同样会改变最终答案,所以肯定和位置以及数值没有关系。

一个比较强的结论是,其只和选出的数的个数有关,且只和选出的数的个数的奇偶性有关。

如果是奇数的话,由于每个相邻两个位置都要操作一遍,那么必然存在一个位置你在中间没有将其算上贡献,所以只能选择偶数个数。

到了这一步就比较容易了,简单相邻两个异或一下插入到线性基里查询最大值即可,注意不能是全集,所以还得删除每个元素都判断一下。

posted @ 2025-09-25 14:52  Alexande  阅读(4)  评论(0)    收藏  举报