<p>给你一个长度为 <code>n</code> 下标从 <strong>0</strong> 开始的整数数组 <code>nums</code> 和一个 <strong>正奇数</strong> 整数 <code>k</code> 。</p> <p><code>x</code> 个子数组的能量值定义为 <code>strength = sum[1] * x - sum[2] * (x - 1) + sum[3] * (x - 2) - sum[4] * (x - 3) + ... + sum[x] * 1</code> ,其中 <code>sum[i]</code> 是第 <code>i</code> 个子数组的和。更正式的,能量值是满足 <code>1 <= i <= x</code> 的所有 <code>i</code> 对应的 <code>(-1)<sup>i+1</sup> * sum[i] * (x - i + 1)</code> 之和。</p> <p>你需要在 <code>nums</code> 中选择 <code>k</code> 个 <strong>不相交</strong><strong>子数组</strong> ,使得 <strong>能量值最大</strong> 。</p> <p>请你返回可以得到的 <strong>最大</strong><strong>能量值</strong> 。</p> <p><strong>注意</strong>,选出来的所有子数组 <strong>不</strong> 需要覆盖整个数组。</p> <p> </p> <p><strong class="example">示例 1:</strong></p> <pre> <b>输入:</b>nums = [1,2,3,-1,2], k = 3 <b>输出:</b>22 <b>解释:</b>选择 3 个子数组的最好方式是选择:nums[0..2] ,nums[3..3] 和 nums[4..4] 。能量值为 (1 + 2 + 3) * 3 - (-1) * 2 + 2 * 1 = 22 。 </pre> <p><strong class="example">示例 2:</strong></p> <pre> <b>输入:</b>nums = [12,-2,-2,-2,-2], k = 5 <b>输出:</b>64 <b>解释:</b>唯一一种选 5 个不相交子数组的方案是:nums[0..0] ,nums[1..1] ,nums[2..2] ,nums[3..3] 和 nums[4..4] 。能量值为 12 * 5 - (-2) * 4 + (-2) * 3 - (-2) * 2 + (-2) * 1 = 64 。 </pre> <p><strong class="example">示例 3:</strong></p> <pre> <b>输入:</b>nums = [-1,-2,-3], k = 1 <b>输出:</b>-1 <b>解释:</b>选择 1 个子数组的最优方案是:nums[0..0] 。能量值为 -1 。 </pre> <p> </p> <p><strong>提示:</strong></p> <ul> <li><code>1 <= n <= 10<sup>4</sup></code></li> <li><code>-10<sup>9</sup> <= nums[i] <= 10<sup>9</sup></code></li> <li><code>1 <= k <= n</code></li> <li><code>1 <= n * k <= 10<sup>6</sup></code></li> <li><code>k</code> 是奇数。</li> </ul>