Choose K Elements With Maximum Sum
You are given two integer arrays, nums1 and nums2, both of length n, along with a positive integer k.
For each index i from 0 to n - 1, perform the following:
- Find all indices
jwherenums1[j]is less thannums1[i]. - Choose at most
kvalues ofnums2[j]at these indices to maximize the total sum.
Return an array answer of size n, where answer[i] represents the result for the corresponding index i.
Example 1
Input
nums1 = [4,2,1,5,3], nums2 = [10,20,30,40,50], k = 2Output
[80,30,0,80,50]For each index, the answer is the maximum sum of at most 2 eligible
nums2 values whose corresponding nums1 value is smaller.Example 2
Input
nums1 = [2,2,2,2], nums2 = [3,1,2,3], k = 1Output
[0,0,0,0]Since all elements in
nums1 are equal, no indices satisfy nums1[j] < nums1[i] for any i, resulting in 0 for all positions.Constraints
- n == nums1.length == nums2.length
- 1 <= n <= 10^5
- 1 <= nums1[i], nums2[i] <= 10^6
- 1 <= k <= n