less than 1 minute read

1. 개요

2. 풀이

def solution(numbers):
    # 기본답은 -1 배열이다.
    answer = [-1 for _ in range(len(numbers))]
    
    # 뒤의 큰수를 처리할 배열이다.
    stack = []

    for i, v in enumerate(numbers):
        # 현재 stack에 있는 값들과 v을 비교하여 뒷 큰수를 찾는다.
        while stack and numbers[stack[-1]] < v:
            answer[stack[-1]] = v
            stack.pop()
        # 현제 인덱스는 다음 이터레이션에서 처리한다.
        stack.append(i)
    return answer

Leave a comment