프로그래머스 - 예산

박상진·2022년 1월 14일
0

프로그래머스

목록 보기
43/65

자세한 설명은 링크 참고

예산을 최대한 많은 수의 부서에게 나눠줄수 있는 방법의 수를 구하는 문제이다.

문제를 뚫어져라 바라보니 한가지 아이디어가 떠올랐다.
예산을 적게 신청한 부서를 우선해서 주게 되면 최대로 줄 수 있지 않을까?
해서 이렇게 코드를 짜보았다.

def solution(d, budget):
    answer = 0
    d.sort()
    for i in range(len(d)) :
        budget -= d[i]
        answer += 1
        if budget <= 0 :
            break
    if budget == 0 :
        pass
    elif budget < 0 :
        answer -= 1
    return answer

몇개의 부서에 줄수 있는지가 문제였기 때문에 예산에서 하나씩 빼주는 형식으로 진행하였다.
마지막에 예산이 0이되는 경우와 나머지로 하니 정답 통과가 되지 않아서 다시 써주었다.
결과는

뛰어들어보면 크게 어렵지 않을수 있다고 다시 한번 깨닫게 된다.

profile
개발자가 되고싶당

0개의 댓글