YC310A [ 20240629 CQYC省选模拟赛 T1 ] 翻转基础问题(flip)
题意
给定一个长度为 \(n\) 的序列,你可以翻转至多 \(k\) 个数的符号。
问当 \(k = 0, 1, 2, ... n\) 时,序列的前缀最大值。
Sol
显然前缀的位置是单调的。
那你决策点都单调了不是决策单调性分治还能是啥?
所以说某些唐氏儿读错题 2h+睡觉 2h+假算 30min 我不说是谁
纯纯的神金
哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈
Sol
考虑每一个最优决策点,对于每一次翻转对于前缀序列的贡献显然是一个后缀。
所以最优决策点显然是单调的,往后靠一定不会劣。
直接上决策单调性分治,维护一个最大前 \(k\) 大之和即可。