문제 링크
https://www.acmicpc.net/problem/17298
문제 풀이
앞서 포스팅한 옥상정원 꾸미기와 유사한 방법으로 해결할 수 있었습니다.
n = int(input())
nums = list(map(int, input().split()))
stack = []
result = []
for i in range(n - 1, -1, -1):
num = nums[i]
while stack and stack[-1] <= num:
stack.pop()
if not stack:
result.append(-1)
else:
result.append(stack[-1])
stack.append(num)
print(' '.join(str(result[i]) for i in range(n - 1, -1, -1)))
'Algorithm > BOJ' 카테고리의 다른 글
[백준] 1600 말이 되고픈 원숭이 (파이썬 python) (0) | 2024.03.13 |
---|---|
[백준] 14442 벽 부수고 이동하기 2 (파이썬 python) (0) | 2024.03.13 |
[백준] 6198 옥상 정원 꾸미기 (파이썬 python) (0) | 2024.03.12 |
[백준] 20437 문자열 게임 2 (파이썬 python) (0) | 2024.03.04 |
[백준] 7576 토마토 (파이썬 python) (0) | 2024.03.02 |