[BOJ 16162] - 가희와 3단 고음 (그리디, Python)

보양쿠·2022년 10월 20일
0

BOJ

목록 보기
54/252

고음에 자신있는 사람들이여. 이 문제를 풀자.

BOJ 16162 - 가희와 3단 고음 링크
(2022.10.20 기준 S4)
(치팅하면 성대결절)

문제

높이가 수로 표현되는 음이 N개, 첫 음이 A, 공차를 D라고 한다면, 음 A를 시작으로 D음씩 올라가는 X단 고음으로 가능한 가장 큰 X

알고리즘

찾고자 하는 음을 앞에서부터 찾아가면 된다.

풀이

먼저 X단 고음의 시작인 A를 찾아야 한다.
그리고 A를 찾으면 A + D, 다음은 A + D 2, ..., A + D (X - 1)을 마지막으로 찾았다면 X단 고음을 찾은 것이다.
참가자들이 고음을 부르는 것이 순서대로 표현된 것이므로 앞에서부터 찾아나가면 된다. 간단하다.

코드

import sys; input = sys.stdin.readline

N, A, D = map(int, input().split()) # 음의 개수, 첫 음, 공차
notes = list(map(int, input().split())) # 참가자들의 음

# 첫 음을 찾고 공차에 따른 다음 음을 찾아나가야 한다.
# 찾은 개수 X만큼 X단 고음이 되는 것이다.
level = 0 # X
find_note = A # 찾아야 하는 음
for i in range(N):
    if notes[i] == find_note: # 찾았다면
        level += 1 # 1단 증가
        find_note += D # 찾아야 하는 음은 D만큼 증가
print(level)

여담

아이유 좋은날 나오던 당시. 진짜 대박이었는데.. 진짜 맨날 찾아봤던 것 같다. 그 후로 한참동안 아이유 앨범 나오면 다 듣고 그랬었는데 그때가 그립다 ㅠㅠ
아이유 노래 last fantasy가 대박임. 아직도 처음 들었을 때 전율이 잊혀지지가 않는다.

profile
GNU 16 statistics & computer science

0개의 댓글