BOJ/Python
[BOJ/백준] 17608 - 막대기 (Python)
tjdms4327
2024. 11. 9. 12:32
문제
n개의 막대기에 대한 높이가 주어질 때, 오른쪽에서 봤을 때 몇 개가 보이는가.
풀이
막대기의 높이는 왼쪽에서부터 차례로 주어진다.
맨 오른쪽 높이를 last로 저장하고 보이는 막대기의 수(count)를 1로 설정한다.
다음 막대기의 높이가 last보다 크면 count에 1을 더하고 last를 갱신한다.
모든 막대기의 높이를 다 보고 난 후의 count가 문제에서 원하는 답이다.
코드
import sys
input = sys.stdin.readline
n=int(input())
lobs=[int(input()) for _ in range(n)]
last = lobs[-1]
count = 1
for i in reversed(range(n)):
if lobs[i] > last:
count += 1
last = lobs[i]
print(count)