문제 링크 (Level 1)
https://programmers.co.kr/learn/courses/30/lessons/12982?language=python3
나의 코드 (Python)
def solution(d, budget):
sum = 0
answer = 0
for i in sorted(d): # 필요로 하는 금액이 적은 순으로 정렬
sum += i
if sum <= budget: # 예산을 넘지 않으면 카운팅
answer += 1
return answer
많은 부서에게 예산을 주려면 가장 적은 예산을 필요로 하는 부서에게 먼저 예산을 주면 된다.
따라서, 낮은 금액으로 정렬된 값을 순차적으로 더해서 예산을 넘지 않을 때까지 카운팅 하면 된다.
'코딩공부 > 프로그래머스 (python)' 카테고리의 다른 글
[프로그래머스] 부족한 금액 계산하기 (Python) (0) | 2022.04.07 |
---|---|
[프로그래머스] 나머지가 1이 되는 수 찾기 (Python) (0) | 2022.04.06 |
[프로그래머스] 최소직사각형 (Python) (0) | 2022.04.03 |
[프로그래머스] 같은 숫자는 싫어 (Python) (0) | 2022.03.31 |
[프로그래머스] 두 개 뽑아서 더하기 (Python) (0) | 2022.03.30 |
댓글