2099. Find Subsequence of Length K With the Largest Sum
You are given an integer array
numsand an integerk. You want to find a subsequence ofnumsof lengthkthat has the largest sum.Return any such subsequence as an integer array of length
k.A subsequence is an array that can be derived from another array by deleting some or no elements without changing the order of the remaining elements.
Example 1:
Input: nums = [2,1,3,3], k = 2
Output: [3,3]
Explanation:
The subsequence has the largest sum of 3 + 3 = 6.Example 2:
Input: nums = [-1,-2,3,4], k = 3
Output: [-1,3,4]
Explanation:
The subsequence has the largest sum of -1 + 3 + 4 = 6.Example 3:
Input: nums = [3,4,3,3], k = 2
Output: [3,4]
Explanation:
The subsequence has the largest sum of 3 + 4 = 7.
Another possible subsequence is [4, 3].
def maxSubsequence(self, nums: List[int], k: int) -> List[int]:
if len(nums) < k or nums == []:
return []
res = nums[:k]
for i in nums[k:]:
minv = min(res)
if i > minv:
res.remove(minv)
res.append(i)
return res