문제

programmers.co.kr/learn/courses/30/lessons/12982

 

코딩테스트 연습 - 예산

S사에서는 각 부서에 필요한 물품을 지원해 주기 위해 부서별로 물품을 구매하는데 필요한 금액을 조사했습니다. 그러나, 전체 예산이 정해져 있기 때문에 모든 부서의 물품을 구매해 줄 수는

programmers.co.kr

 

문제풀이

예산이 적은곳부터 처리해주면된다.

 

코드

#Summer/Winter Coding(~2018) #예산

from typing import List

def solution(d:List[int], budget:int)->int:
	
    # 모든 예산을 처리할 수 있으면 바로 return
    if sum(d) <= budget:
        return len(d)
        
    d.sort()
    answer =  0
    
    # 예산이 적게드는곳 부터 처리
    for num in d:
        if budget>= num:
            budget-=num
            answer+=1

    return answer
solution([1, 3, 2, 5, 4], 9)
ariz1623