有一个很显然的结论:如果 Bob 对其他地方进行操作一定不优。
所以我们就会发现他们的操作如下:
* Alice 找到一个最优点,并进行增加操作。
* Bob 将这个最优点进行减少操作减回来。
* Alice 继续增加,Bob 继续减少,以此类推。
所以答案只和 kkk 的奇偶性有关。当 kkk 为偶数时,答案为原数组最大子段和;当 kkk 为奇数时,只需考虑 Alice 操作即可。
我们可以枚举每个点进行增加操作后最大子段和为多少,显然可以线段树求。
时间复杂度:O(∑nlogn)O(\sum n\log n)O(∑nlogn)。