870. Advantage Shuffle
Description
Difficulty: Medium
Related Topics: Array, Two Pointers, Greedy, Sorting
You are given two integer arrays nums1 and nums2 both of the same length. The advantage of nums1 with respect to nums2 is the number of indices i for which nums1[i] > nums2[i].
Return any permutation of nums1 that maximizes its advantage with respect to nums2.
Example 1:
1 | Input: nums1 = [2,7,11,15], nums2 = [1,10,4,11] |
Example 2:
1 | Input: nums1 = [12,24,8,32], nums2 = [13,25,32,11] |
Constraints:
- 1 <= nums1.length <= 105
nums2.length == nums1.length- 0 <= nums1[i], nums2[i] <= 109
Hints/Notes
- Use priority queue for nums2, also we need to record the index for each value
- Need to allocate a new res vector for return, nums1 records sorted array
1 | class Solution { |
Solution
Language: C++
1 | class Solution { |