元宵节饺子分配(动态规划-分组背包)
题目描述
元宵节到了,李奶奶煮了 n 盘饺子,每盘饺子有 nums[i] 个( nums[i] ≥ 1 )。她要把这些饺子全部分配给 k 个孩子,满足以下规则:
1. 每盘饺子必须整盘分配,不能拆分。
2. 每个孩子至少分到 1 盘饺子。
3. 为了公平,要求所有孩子分到的饺子总数的最大值尽可能小。
请你计算出这个最小的最大值。
示例 1
输入:nums = [3,5,1,7], k = 2
输出:8
解释:
分配方案:孩子1分 [3,5](8个),孩子2分 [1,7](8个)。最大值为8,是所有可行方案中的最小值。
示例 2
输入:nums = [2,2,2,2], k = 4
输出:2
解释:每个孩子分1盘,最大值为2。
示例 3
输入:nums = [10,8,6,4,2], k = 3
输出:12
解释:最优分配:[10,2], [8,4], [6] → 最大值12。
提示
- 1 ≤ k ≤ n ≤ 20
- 1 ≤ nums[i] ≤ 100
- 数据保证可以满足每个孩子至少1盘的要求。