[PY] 17608 : 막대기

https://www.acmicpc.net/problem/17608

다소 어이가 없었다. 이걸 깊게 고민했던 내가 싫다..

요약하면, 스택에서 꺼내면서 최대치가 갱신 될 때마다 카운트를 계속 세주면 된다.
가려진 애들이 얼마나 있는지를 구할 필요가 없으니, 스택에서 꺼내는 걸 시작하는 시점에서부터 최대치를 계속 갱신해주면된다.

물론 최대치가 얼마인지도 실제로 궁금하지도 않다. 핀트는 몇 번이나 그랬냐? 이니까..

import sys

stickStack = []

stickCnt = int(sys.stdin.readline())

for i in range(stickCnt):
    stickStack.append(int(sys.stdin.readline()))

curMaxLength = 0
viewAbleCnt = 0

while len(stickStack) != 0:
    item = stickStack.pop()

    if(curMaxLength < item):
        curMaxLength = item
        viewAbleCnt += 1

print(viewAbleCnt)

'문제풀이' 카테고리의 다른 글

[PY] 8983 : 사냥꾼  (0) 2025.03.25
[PY] 2470 : 두 용액  (0) 2025.03.25
[PY] 9012 : 괄호  (0) 2025.03.24
[PY] 10773 : 제로  (0) 2025.03.24
[PY] 10828 : 스택  (0) 2025.03.24