TIL
[2024.06.25] 프로그래머스_예산(Summer/Winter Coding(~2018))
_자몽
2024. 6. 26. 02:45
오늘의 알고리즘으로 풀어본 문제!
문제 풀이를 위한 생각
1. 많은 부서의 물품 구매하려면? -> 신청한 금액이 적은 부서부터 처리
2. 신청 금액 별로 정렬하려면? -> sort() 사용(오름차순) -> 시간 복잡도 n log(n)
3. 예산에서 정렬된 부서별 신청 금액을 순차적으로 삭감
3-1. 예산이 소진된다면 순회 끝내기
문제 풀이
처음 생각한 대로 코드로 작성하니 정상적으로 잘 작동하였다. for문을 쓸지 다른 내장함수를 사용할지 고민했는데, 3-1 예산이 소진될 경우 순회를 끝내기 위한 로직을 넣기 위해선 for문이 좀 더 효과적이라 생각하여 사용하였다.