给你一个 正整数 数组 nums
和一个整数 k
。
从 nums
中选择最多 k
个元素,使它们的和最大化。但是,所选的数字必须 互不相同 。
返回一个包含所选数字的数组,数组中的元素按 严格递减 顺序排序。
示例 1:
输入: nums = [84,93,100,77,90], k = 3
输出: [100,93,90]
解释:
最大和为 283,可以通过选择 93、100 和 90 实现。将它们按严格递减顺序排列,得到 [100, 93, 90]
。
示例 2:
输入: nums = [84,93,100,77,93], k = 3
输出: [100,93,84]
解释:
最大和为 277,可以通过选择 84、93 和 100 实现。将它们按严格递减顺序排列,得到 [100, 93, 84]
。不能选择 93、100 和另一个 93,因为所选数字必须互不相同。
示例 3:
输入: nums = [1,1,1,2,2,2], k = 6
输出: [2,1]
解释:
最大和为 3,可以通过选择 1 和 2 实现。将它们按严格递减顺序排列,得到 [2, 1]
。
提示:
1 <= nums.length <= 100
1 <= nums[i] <= 109
1 <= k <= nums.length