[BOJ] 동전 0

.·2022년 6월 3일
0

문제 링크 - https://www.acmicpc.net/problem/11047


사고 과정

  • 우선 k원을 넘기는 동전들은 빼고 새로운 리스트를 만들었다.
    그리고 새로운 리스트를 돌면서 greedy 문제로 풀면 끝

나의 풀이

import sys
n, k = map(int, sys.stdin.readline().split())
coin = []
cut = 0
for _ in range(n):
    coin.append(int(sys.stdin.readline()))
for j in range(n):
    if coin[j]>k:
        cut = coin.index(coin[j])
        break
    else:
        cut = len(coin)+1

coin_cp = coin[:cut]
cnt = 0
for i in range(len(coin_cp)):
    while True:
        if k//coin_cp[len(coin_cp)-1-i] != 0:
            cnt += (k//coin_cp[len(coin_cp)-1-i])
            k%=coin_cp[len(coin_cp)-1-i]
        else:
            break
    if k == 0:
        break
print(cnt)

0개의 댓글