CF1827B1 Range Sorting (Easy Version)

https://codeforces.com/problemset/problem/1827/B1

求“美丽值”可转化为:将数组划分为尽可能多的连续段,使得每一段的最大值都小于下一段的最小值。

考虑在已知区间 \([l, r]\) 最优划分的基础上,加入 \(a_{r + 1}\) 得到 \([l, r + 1]\) 的最优划分。找到最靠右的最大值 \(< a_{r + 1}\) 的段,并将其右边的段与 \(a_{r + 1}\) 合并为一个新段,单调栈维护即可。

posted @ 2026-04-01 11:40  Sunsoak  阅读(8)  评论(0)    收藏  举报