
프로그래머스 LV1 예산(Summer/Winter Coding(~2018))
2021, Apr 12
프로그래머스 lv1 예산(Summer/Winter Coding(~2018))
문제 링크: https://programmers.co.kr/learn/courses/30/lessons/12982
출처: 프로그래머스 코딩 테스트 연습 https://programmers.co.kr/learn/challenges
풀이
## 내 풀이
# sum을 반복하지 않고 한번 더한거에서 제일 큰거를 하나씩 빼갔다.
# 그리고 맨 마지막에 전체 d 길이에서 뺀 갯수만큼 빼면 길이를 구할 수 있다.
def solution(d, budget):
d = sorted(d)
sum_d = sum(d)
i = 0
while budget < sum_d:
i+=1
sum_d -= d[len(d)-i]
return len(d) - i
>>>3
# 다른 사람 풀이. 나랑 생각은 완전 똑같이 했는데 while 문 쓰는 법이 달라서 더 짧고 간결해보임
def solution(d, budget):
d.sort()
while budget < sum(d):
d.pop()
return len(d)