题目描述
现在有一个长度为N的整数序列 { a i } \{a_i\} { ai} ,你需要从中选出 K K K个不相交的连续子区间(可以存在元素不被选),从左到右记它们的和为 s 1 , s 2 , . . . , s k s1,s2,...,sk s1,s2,...,sk。我们的优化目标是最大化下述和式:
∑ i = 1 k ∣ s i − s i + 1 ∣ \sum_{i=1}^{k} |s_i-s_{i+1}| i=1∑k∣si−si+1∣
你只需要输出这个最大的和即可。
题解
我们对式子进行变形,可以表示为: ∑ i = 1 k ∣ s i − s i + 1 ∣ = ∑ i = 1 k max ( s i − s i + 1 , s i + 1 − s i ) \sum_{i=1}^{k} |s_i-s_{i+1}|=\sum_{i=1}^{k}\max(s_i-s_{i+1},s_{i+1}-s_i) i=1∑k∣si−si+1∣=i=1∑kmax(s