Class Solution
-
- All Implemented Interfaces:
public final class Solution
1187 - Make Array Strictly Increasing\.
Hard
Given two integer arrays
arr1
andarr2
, return the minimum number of operations (possibly zero) needed to makearr1
strictly increasing.In one operation, you can choose two indices
0 <= i < arr1.length
and0 <= j < arr2.length
and do the assignmentarr1[i] = arr2[j]
.If there is no way to make
arr1
strictly increasing, return-1
.Example 1:
Input: arr1 = 1,5,3,6,7, arr2 = 1,3,2,4
Output: 1
Explanation: Replace
5
with2
, thenarr1 = [1, 2, 3, 6, 7]
.Example 2:
Input: arr1 = 1,5,3,6,7, arr2 = 4,3,1
Output: 2
Explanation: Replace
5
with3
and then replace3
with4
.arr1 = [1, 3, 4, 6, 7]
.Example 3:
Input: arr1 = 1,5,3,6,7, arr2 = 1,6,3,3
Output: -1
Explanation: You can't make
arr1
strictly increasing.Constraints:
1 <= arr1.length, arr2.length <= 2000
0 <= arr1[i], arr2[i] <= 10^9
-
-
Constructor Summary
Constructors Constructor Description Solution()
-
Method Summary
Modifier and Type Method Description final Integer
makeArrayIncreasing(IntArray arr1, IntArray arr2)
-
-
Method Detail
-
makeArrayIncreasing
final Integer makeArrayIncreasing(IntArray arr1, IntArray arr2)
-
-
-
-