移除受影响的数据后,最终序列是有序序列。
直接考虑每种数字在每位出现次数即可。
注意考虑上下界边界情况。
被操作的点仅可能是 ai=i 的点。
显然相邻且均满足 ai=i 的两个位置无法操作,所以原序列可分为若干交替是否满足 ai=i 的子串。
每个子任务单独考虑,必须满足 ai 在可交换的区间内且需要交换的数最长下降子序列长度不能超过 2。
考虑设 fS,x,xi,y,yi 表示已满足的限制的状态 S,从右往左正在满足的是 x,满足到 xi 位,从左往右正在满足的是 y,满足到 yi 位,最少的元素个数。
不妨从左向右考虑,对于所有向右得到的序列 i,若能接在 y 后面,则满足 y 的剩余部分可以被 i 覆盖,于是之后只需要考虑 i 即可。
对于 x,若已被填满,对于所有向左得到的序列 i,若可以接上,则满足 i 的接入部分可以被 x 覆盖,于是之后考虑 i 的剩余部分即可。
扫码关注腾讯云开发者
领取腾讯云代金券
Copyright © 2013 - 2025 Tencent Cloud. All Rights Reserved. 腾讯云 版权所有
深圳市腾讯计算机系统有限公司 ICP备案/许可证号:粤B2-20090059 深公网安备号 44030502008569
腾讯云计算(北京)有限责任公司 京ICP证150476号 | 京ICP备11018762号 | 京公网安备号11010802020287
Copyright © 2013 - 2025 Tencent Cloud.
All Rights Reserved. 腾讯云 版权所有