GitHub

https://github.com/Choidongjun0830

파이썬 알고리즘 문제 풀이

Baekjoon Online Judge 11047번 파이썬. 그리디

gogi masidda 2023. 1. 5. 17:04

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

11047번: 동전 0

첫째 줄에 N과 K가 주어진다. (1 ≤ N ≤ 10, 1 ≤ K ≤ 100,000,000) 둘째 줄부터 N개의 줄에 동전의 가치 Ai가 오름차순으로 주어진다. (1 ≤ Ai ≤ 1,000,000, A1 = 1, i ≥ 2인 경우에 Ai는 Ai-1의 배수)

www.acmicpc.net





정답 코드

import sys

N, K = map(int,sys.stdin.readline().split())
money = []
for i in range(N):
  money.append(int(sys.stdin.readline()))

count = 0
bill = money[len(money)-1]

def greedy(K,bill,count): 
  if K >= bill:
    count += K//bill
    K -= K//bill*bill
  if K == 0:
    print(count)
    return
  bill = money[money.index(bill)-1]
  greedy(K,bill,count)
    
greedy(K,bill,count)
728x90