
😎풀이
- subArray의 엄격한 증가를 검사할 헬퍼 함수
isStrictlyInc 정의
nums 순회
2-1. k개씩 겹치지 않는 두 범위 분할
2-2. 두 범위 모두 엄격히 증가하는지 검사
2-3. 모두 엄격히 증가한다면, true 반환
- 모든 범위가 엄격히 증가하지 않는다면,
false 반환
function hasIncreasingSubarrays(nums: number[], k: number): boolean {
for(let i = 0; i <= nums.length - k * 2; i++) {
const endIdx = i + k
const sub1 = nums.slice(i, endIdx)
const sub2 = nums.slice(endIdx, endIdx + k)
if(!isStrictlyInc(sub1)) continue
if(!isStrictlyInc(sub2)) continue
return true
}
return false
};
function isStrictlyInc(arr: number[]) {
let prev = arr[0]
for(let i = 1; i < arr.length; i++) {
const cur = arr[i]
if(cur <= prev) return false
prev = cur
}
return true
}