728x90
반응형

17298번 오큰수 문제와 거의 동일한 스택 문제이다. 오큰수는 앞에서부터 확인하면서 스택을 쌓아다면

이 문제는 뒤에서 부터 확인하면서 스택을 쌓으면 된다. PyPy3로 제출해야 통과된다.

from collections import deque

N = int(input())
h = deque(map(int, input().split()))
stack = deque()
res = [0]*N
for i in range(N-1, -1, -1):
    while stack and h[stack[-1]] < h[i]:
        res[stack.pop()] = i+1
    stack.append(i)
print(*res)
728x90
반응형

+ Recent posts