728x90
반응형
* 해당 문제 및 해설은 "이것이 코딩 테스트 다 with 파이썬" 책을 기준으로 요약 및 정리 하여 작성하였습니다.
http://www.yes24.com/product/goods/91433923
그리디 알고리즘이란 '현재 상황에서 지금 당장 좋은 것만 고르는 방법' 을 의미한다.
그리디 알고리즘을 이용하면 매 순간 가장 좋아 보이는 것을 선택하며, 현재의 선택이 나중에 미칠 영향에 대해서는 고려하지 않는다.
문제 설명 : 그리디 - 거스름돈
당신은 음식점의 계산을 도와주는 점원이다. 카운터에서 거스름돈으로 사용할 500원, 100원, 50원, 10원짜리 동전이 무한히 존재한다고 가정한다. 손님에게 거슬러줘야 할 돈이 N원일 때, 거슬러 줘야 할 동전의 최소 개수를 구하라.
코드 풀이 및 수행 코드
1. 무엇을 찾아야 하는 가? 최소 개수
= '가장 큰 화폐 단위부터' 돈을 거슬러 주는 것'
n = 1260
count = 0
# 큰 단위의 화폐부터 차례대로 확인
list = [500, 100, 50, 10]
for coin in list :
count += n // coin # 해당 화폐로 거슬러 줄 수 있는 동전의 개수 세기
n %= coin
print(count)
개인적인 생각
세미콜론(;) 을 사용할 필요 없고 타입을 지정해주지 않아도 빠르게 작성할 수 있는 파이썬은 코딩 테스트에 적합한 언어라고 생각이 됩니다. 코딩테스트를 볼 언어를 선정할 때, 가장 중요한 것이 범용성 이라고 생각되는데, 유명한 언어인 파이썬을 사용해보려 합니다.
(과거에는 데이터 분석 스크립트를 이용하여 개발을 할 때 잠깐 사용한 경험이 있습니다.)
궁극적으로 언어에 제한받지 않는 개발자, 최적의 언어를 이용하여 개발을 하는 개발자가 되고 싶습니다. :)
오늘의 개발자 명언
컴퓨터랑 일하는 건 엄청 멋있다.
누구랑 싸우지도 않고, 모든 것을 대신 기억해주고, 내 맥주를 뺏어 마시지도 않는다. (Paul Leary)
728x90
반응형
'개발 > Coding Test - Python' 카테고리의 다른 글
[Python] 이것이 코딩테스트다 with 파이썬 - 구현 - 상하좌우 (0) | 2023.01.20 |
---|---|
[Python] 이것이 코딩테스트다 with 파이썬 - 구현이란? (0) | 2023.01.20 |
[Python] 이것이 코딩테스트다 with 파이썬 - 그리디 - 1이 될 때 까지 (2) | 2023.01.19 |
[Python] 이것이 코딩테스트다 with 파이썬 - 그리디 - 숫자 카드 게임 (0) | 2023.01.17 |
[Python] 이것이 코딩테스트다 with 파이썬 - 그리디 - 큰 수의 법칙 (0) | 2023.01.17 |