Loading

2023 ICPC 亚洲区域赛济南站 K. Rainbow Subarray

思路

赛时完全没有思路

考虑 \(a_i - a_{i - 1} = 1\) 的转化
容易发现其等价于 \(a_{i - 1} - (i - 1) = a_i - i\)

\(a_i \to a_i - i\)
问题转化为

求将某一个区间全部变成同一个数的最优方案

考虑到这是经典贪心, 我们把一个区间全部变成其中位数最优, 问题转化为求 \([L, R]\) 区间的中位数, 然后直接暴力
容易发现对于固定的 \([L, R]\) , 其最优操作次数严格不小于其子段, 我们可以用双指针维护即可, 动态维护中位数可以用 \(\rm{multiset}\) 维护对顶堆

总结

\(a_i - a_{i - 1} = 1\) 的经典转化

有单调性的柿子考虑双指针维护

posted @ 2025-01-07 16:52  Yorg  阅读(38)  评论(0)    收藏  举报