[BOJ] 11047 동전0

그리디 알고리즘


리스트 컴프리헨션과 음수 인덱싱을 사용하면 편리하다.

그리디 알고리즘을 사용할 수 있는 정당성을 찾아야 하는데, 동전의 종류는 각각 서로 배수를 취한다는 점에서 정당성을 찾을 수 있었다.

N, K = map(int, input().split())
# list comprehension 을 이용하여 입력 여러개 받기
A = [int(input()) for _ in range(N)]

answer = 0
i = -1          # 음수 인덱싱은 뒤에서부터 탐색
while K > 0:
    answer += K // A[i]
    K %= A[i]
    i -= 1
print(answer)

태그:

카테고리:

업데이트: