[백준/Python] 17608번 : 막대기
문제
https://www.acmicpc.net/problem/17608
풀이
sys.stdin.readline을 활용하지 않으니 시간 초과가 발생했다. 오른쪽을 기준으로 하나씩 막대기를 바라봤을 때 해당 막대기의 오른쪽보다 높이가 낮은 막대기는 보이지 않는다.
각 막대기를 ls 배열에 넣은 후 오른쪽부터 바라보기위해 reversed()
를 활용하여 역순으로 정렬하였고, 가장 우측의 막대기부터 순서대로 살펴보며 높이 최솟값 min_h를 업데이트해주며 보일 수 있는 막대기의 수를 세어서 문제를 풀었다.
import sys
input = sys.stdin.readline
N = int(input())
ls = [int(input()) for _ in range(N)]
cnt = 0
min_h = 0
for h in reversed(ls):
if h > min_h:
cnt += 1
min_h = h
print(cnt)