백준 17298 - 오큰수 (파이썬)

Updated:

Answer

import sys

input = sys.stdin.readline
n = int(input())
a = list(map(int, input().split()))
answer = [-1] * n
s = [0]

for i in range(1, n):
    while s and a[s[-1]] < a[i]:
        answer[s.pop()] = a[i]
    s.append(i)

print(*answer)

Categories:

Updated: