1
0
mirror of https://gitee.com/coder-xiaomo/leetcode-problemset synced 2025-01-11 02:58:13 +08:00
Code Issues Projects Releases Wiki Activity GitHub Gitee
leetcode-problemset/leetcode-cn/problem (Chinese)/分割数组的最大值 [split-array-largest-sum].html

40 lines
1.2 KiB
HTML
Raw Normal View History

2023-12-09 18:42:21 +08:00
<p>给定一个非负整数数组 <code>nums</code> 和一个整数&nbsp;<code>k</code> ,你需要将这个数组分成&nbsp;<code>k</code><em>&nbsp;</em>个非空的连续子数组。</p>
2022-03-27 20:56:26 +08:00
2023-12-09 18:42:21 +08:00
<p>设计一个算法使得这&nbsp;<code>k</code><em>&nbsp;</em>个子数组各自和的最大值最小。</p>
2022-03-27 20:56:26 +08:00
<p>&nbsp;</p>
<p><strong>示例 1</strong></p>
<pre>
2023-12-09 18:42:21 +08:00
<strong>输入:</strong>nums = [7,2,5,10,8], k = 2
2022-03-27 20:56:26 +08:00
<strong>输出:</strong>18
<strong>解释:</strong>
一共有四种方法将 nums 分割为 2 个子数组。
其中最好的方式是将其分为 [7,2,5] 和 [10,8] 。
因为此时这两个子数组各自的和的最大值为18在所有情况中最小。</pre>
<p><strong>示例 2</strong></p>
<pre>
2023-12-09 18:42:21 +08:00
<strong>输入:</strong>nums = [1,2,3,4,5], k = 2
2022-03-27 20:56:26 +08:00
<strong>输出:</strong>9
</pre>
<p><strong>示例 3</strong></p>
<pre>
2023-12-09 18:42:21 +08:00
<strong>输入:</strong>nums = [1,4,4], k = 3
2022-03-27 20:56:26 +08:00
<strong>输出:</strong>4
</pre>
<p>&nbsp;</p>
<p><strong>提示:</strong></p>
<ul>
<li><code>1 &lt;= nums.length &lt;= 1000</code></li>
<li><code>0 &lt;= nums[i] &lt;= 10<sup>6</sup></code></li>
2023-12-09 18:42:21 +08:00
<li><code>1 &lt;= k &lt;= min(50, nums.length)</code></li>
2022-03-27 20:56:26 +08:00
</ul>