(口胡)dp+四边形不等式优化+矩阵优化:P8864

本文搬运自本人高中时期CSDN博客,若图片加载不出来,可到原文查看:https://blog.csdn.net/zhangtingxiqwq/article/details/135116753

https://www.luogu.com.cn/problem/P8864

一个经典套路,只是以前是用在差分上,现在是异或,所以我们设前缀异或和序列为 ss ,每次操作相当于交换 si1s_{i-1}si+1s_{i+1} 。区间内原先1的个数相当于 ss 的段数。

我们考虑 ss 中的1的连续段,可以是 d2(+1)\dfrac d 2(+1) 段。我们显然可以设计一个区间dp来做,转移就是士兵站队,往中间站,预处理即可。

考虑优化。我们抛开段数,因为段数相当于是一层一层来枚举。决策单调性是显然的,我们要证明四边形不等式,也就是交叉小于包含。如果 ala_lara_r 有一个是0,直接取等。此处我们采用数形结合的思路:

在这里插入图片描述

最后那个dp是可以变成一个min+矩阵的形式。