🗂️ 문제
링크: https://www.acmicpc.net/problem/11047
💡 접근법
그리디 알고리즘을 이용하여 문제에 접근한다.
즉 현재 시점에서 최선의 선택을 하고 이 선택이 전체 문제를 해결할 수 있는지 확인한다.
문제에서 제시한 대로 최소 동전 개수를 구하기 위해서는 가장 가격이 큰 동전부터 차례대로 순회하면 된다.
😎 내 코드
import sys
N, K = map(int, sys.stdin.readline().split())
A = [int(sys.stdin.readline().rstrip()) for _ in range(N)]
cnt = 0
for a in reversed(A):
cnt += K // a
K %= a
print(cnt)
✅ 정답 확인
'Algorithm > Baekjoon' 카테고리의 다른 글
[힙, 정렬] 백준 #2571 수 정렬하기 2 - Python (0) | 2024.03.08 |
---|---|
[그리디] 백준 #1541 잃어버린 괄호 - Python (0) | 2024.03.05 |
[해시] 백준 #20920 영단어 암기는 괴로워 - Python (0) | 2024.02.20 |
[BFS] 백준 #1167 트리의 지름 구하기 - Python (1) | 2023.10.10 |
[BFS] 백준 #2178 미로 탐색하기 - Python (0) | 2023.10.10 |