데하! 안녕하세요 DevStone입니다!
그리디 문제 세 번째 동전 0 문제입니다.
저 또한 공부하면서 포스팅하는 거라 제 알고리즘이 최적이거나
정답은 아닙니다! 단순히 참고 용도로 부탁드립니다.
문제
풀이
우선 동전 N값과 그 가치의 합 K 값을 입력합니다.
동전의 종류를 담을 리스트 coin을 선언하고 필요한 동전 개수를 카운트할 coin_cnt를 선언합니다.
for문으로 동전의 종류를 입력 받고 리스트를 내림차순으로 정렬하여 금액이 가장 큰 동전의 값이 맨 앞으로
오게 합니다. 이제 for 문으로 coin 값 하나씩 가져와 총합 나누기 i의 값을 coin_cot 개수로 추가해주고
k는 i의 나머지로 변경 후 다음 코인으로 변경 해 반복합니다.
이 과정을 반복해서 동전 개수의 최솟값을 구할 수 있습니다.
문제 링크
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
예제 소스는 git에서 확인하실 수 있습니다.
https://github.com/Maker-Kim/Study/blob/master/Algorithm/Baekjoon_11047.py
GitHub - Maker-Kim/Study
Contribute to Maker-Kim/Study development by creating an account on GitHub.
github.com
'개발 > Algorithm' 카테고리의 다른 글
BAEKJOON Algorithm_1541번 (0) | 2021.07.29 |
---|---|
BAEKJOON Algorithm_1931번 (0) | 2021.07.28 |
BAEKJOON Algorithm_11399번 (0) | 2021.07.23 |
BAEKJOON Algorithm_2839번 (0) | 2021.07.22 |
BAEKJOON Algorithm_10998번 ( 1 - 7 ) (0) | 2021.07.08 |