연속 숫자로 sort된 길이를 임시로 저장해가며, 그 길이가 k 이상이면 그 인덱스의 숫자를 (maximum 값이 현재 index임이 충족된다), 그렇지 않다면 -1을 담아 반환하기만 하면 된다.
기본적인 sort 개념을 어떻게 응용해 볼 수 있을까를 물어보는 문제라고 생각한다.
풀이 코드
class Solution:
def resultsArray(self, nums: List[int], k: int) -> List[int]:
sortLen = [1]*len(nums)
for i in range(len(nums)-1) :
if nums[i]+1 == nums[i+1] :
sortLen[i+1] = sortLen[i]+1
return [ nums[i] if sortLen[i] >= k else -1 for i in range(k-1, len(nums)) ]