프로그래머스/Level1
[Summer/Winter Coding(~2018) / 프로그래머스] 12982번 : 예산
ydin
2022. 8. 24. 11:55
- 문제 : https://school.programmers.co.kr/learn/courses/30/lessons/12982
Level 1 문제이고, 스스로 푼 문제다!
최대한 많은 수를 더해야 하므로 작은 수 부터 더해야한다고 생각했다
d.sort()를 한 뒤 0인덱스부터 더해가면 최대의 부서에세 물품을 지원할 수 있다
count 변수로 그동안의 합을 누적한 뒤 이게 budget 이하인 경우에만 진행하고, 진행할 때마다 answer += 1 로
갯수를 누적해간다
- 정답 풀이 :
def solution(d, budget):
d.sort()
count = 0
answer = 0
for i in d :
if count + i < budget:
count += i
answer += 1
elif count + i == budget:
answer += 1
break
else:
break
return answer