728x90
반응형
문제
https://www.acmicpc.net/problem/17608
해설
가장 뒤의 막대기는 항상 보여지기 때문에 cnt를 1로 초기화 해준다.
뒤부터 비교하면서 더 큰 막대기가 나오면 cnt를 +1해주고 비교값인 stick을 해당 막대기로 바꿔 비교해나간다.
이렇게 해야 큰 막대기 뒤에 가려지는 막대기들을 가려낼 수 있다.
코드
-파이썬
#백준 17608(막대기)
import sys
input = sys.stdin.readline
n = int(input()) #막대기 개수
lst = [int(input()) for _ in range(n)]
cnt = 1
stick = lst[-1]
for i in range(n-1, -1, -1):
if lst[i] > stick:
cnt += 1
stick = lst[i]
print(cnt)
728x90
반응형
'알고리즘 > 백준' 카테고리의 다른 글
[파이썬] BOJ_2231(분해합) (0) | 2023.05.23 |
---|---|
[파이썬] BOJ_8958(OX퀴즈) (0) | 2023.05.21 |
[파이썬] BOJ_1212(8진수 2진수) (0) | 2022.08.13 |
[파이썬] BOJ_2745(진법 변환) (0) | 2022.08.12 |
[파이썬] BOJ_10866(덱) (0) | 2022.06.10 |