본문 바로가기
Algorithm(BOJ, Python)/Greedy

[백준_11047] 동전 0 python

by kurooru 2022. 7. 8.

그리 어렵지 않게 해결할 수 있는

그리디 알고리즘이였다.

# 입력 속도 개선
import sys
input = sys.stdin.readline

# n, k 입력
n, k = map(int, input().split())

# coin_list 설계
coin_list = []

# coin_list 채우기
for _ in range(n):
    coin_list.append(int(input()))

# def find_max(k)
def find_max(k):

    # 최댓값 초기설정
    M = 0

    # 코인리스트를 돌며
    for coin in coin_list:
        
        # 코인이 현재 k값보다 작거나 같으면
        if coin <= k:

            # 최댓값을 코인값으로 바꿔줌
            M = coin
    
    # return
    return M

# cnt 설정
cnt = 0

# k가 0이 되기 전까지
while k != 0:

    # k 값 갱신
    k = k - find_max(k)

    # cnt 값 갱신
    cnt += 1

# 출력
print(cnt)

'Algorithm(BOJ, Python) > Greedy' 카테고리의 다른 글

[백준_1931] 회의실배정 python  (0) 2022.06.30