Class Solution
- java.lang.Object
-
- g2601_2700.s2601_prime_subtraction_operation.Solution
-
public class Solution extends Object
2601 - Prime Subtraction Operation.Medium
You are given a 0-indexed integer array
numsof lengthn.You can perform the following operation as many times as you want:
- Pick an index
ithat you haven\u2019t picked before, and pick a primepstrictly less thannums[i], then subtractpfromnums[i].
Return true if you can make
numsa strictly increasing array using the above operation and false otherwise.A strictly increasing array is an array whose each element is strictly greater than its preceding element.
Example 1:
Input: nums = [4,9,6,10]
Output: true
Explanation: In the first operation: Pick i = 0 and p = 3, and then subtract 3 from nums[0], so that nums becomes [1,9,6,10]. In the second operation: i = 1, p = 7, subtract 7 from nums[1], so nums becomes equal to [1,2,6,10]. After the second operation, nums is sorted in strictly increasing order, so the answer is true.
Example 2:
Input: nums = [6,8,11,12]
Output: true
Explanation: Initially nums is sorted in strictly increasing order, so we don’t need to make any operations.
Example 3:
Input: nums = [5,8,3]
Output: false
Explanation: It can be proven that there is no way to perform operations to make nums sorted in strictly increasing order, so the answer is false.
Constraints:
1 <= nums.length <= 10001 <= nums[i] <= 1000nums.length == n
- Pick an index
-
-
Constructor Summary
Constructors Constructor Description Solution()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description booleanprimeSubOperation(int[] nums)
-