백준 2493번 탑 (python)

Kim Yongbin·2023년 9월 26일
0

코딩테스트

목록 보기
76/162

Problem

2493번: 탑

Solution

import sys

N = int(sys.stdin.readline())
tower = list(map(int, sys.stdin.readline().strip().split()))

answer = [str(0)] * N

stack = []
for i, t in enumerate(tower[::-1]):
    while stack and stack[-1][0] <= t:
        _, idx = stack.pop()
        answer[idx-1] = str(N-i)

    stack.append((t, N-i))

print(" ".join(answer))

Reference

profile
반박 시 여러분의 말이 맞습니다.

0개의 댓글