Adjacent Increasing Subarrays Detection II
You receive an array nums of n integers, your task is to find the largest value of k for which there exist two adjacent subarrays of length k each, such that both subarrays are strictly increasing. Specifically, check if there are two subarrays of length k starting at indices a and b ( a < b ), where:
-
Both subarrays
nums[a..a + k - 1]andnums[b..b + k - 1]are strictly increasing. -
The subarrays must be adjacent, meaning
b = a + k.
Find and provide the largest valid value of k.
A subarray is a contiguous non-empty sequence of elements within an array.
Input: nums = [2,5,7,8,9,2,3,4,3,1]
Output: 3
Explanation:
-
The subarray starting at index 2 is
[7, 8, 9], which is strictly increasing. -
The subarray starting at index 5 is
[2, 3, 4], which is also strictly increasing. -
These two subarrays are adjacent, and 3 is the maximum possible value of
kfor which two such adjacent strictly increasing subarrays exist.
Input: nums = [1,2,3,4,4,4,4,5,6,7]
Output: 2
Explanation:
-
The subarray starting at index 0 is
[1, 2], which is strictly increasing. -
The subarray starting at index 2 is
[3, 4], which is also strictly increasing. -
These two subarrays are adjacent, and 2 is the maximum possible value of
kfor which two such adjacent strictly increasing subarrays exist.
Constraints
2 <= nums.length <= 2 * 10^5-10^9<= nums[i] <= 10^9
Did this problem appear in one of your interviews?
Responses stay private.
