TIL

[2024.06.25] 프로그래머스_예산(Summer/Winter Coding(~2018))

_자몽 2024. 6. 26. 02:45

오늘의 알고리즘으로 풀어본 문제!

Summer/Winter Coding(~2018)

문제 풀이를 위한 생각

1. 많은 부서의 물품 구매하려면? -> 신청한 금액이 적은 부서부터 처리

2. 신청 금액 별로 정렬하려면? -> sort() 사용(오름차순) -> 시간 복잡도 n log(n)

3. 예산에서 정렬된 부서별 신청 금액을 순차적으로 삭감

   3-1. 예산이 소진된다면 순회 끝내기

 

풀이 코드

문제 풀이

처음 생각한 대로 코드로 작성하니 정상적으로 잘 작동하였다. for문을 쓸지 다른 내장함수를 사용할지 고민했는데, 3-1 예산이 소진될 경우 순회를 끝내기 위한 로직을 넣기 위해선 for문이 좀 더 효과적이라 생각하여 사용하였다.