181120_(火) - PassionOfStudy/Algorithm GitHub Wiki

Programmers_(Budget)

예산 Budget

My Solution

문제를 봤을 때, 요구하는 부서의 예산을 충족시키는 경우를 제일 많이 만족하기 위해서는 예산이 제일 적은 부서부터 만족해야 된다고 생각했다.

단순히 만족하는 부서의 수가 최대인 것을 구하는 문제이므로, 입력받은 부서의 예산들을 sorted(by:<)를 이용해서 오름차순으로 정렬했다.

다음은 배열의 loop를 돌면서 budgets이 0보다 작을 때 까지 제일 작은 예산부터 접근해서 budgets -= 예산을 계산하며 if문 budgets >= item을 만족한다면 count변수에 누적하면서 for문을 돌렸다.

Other Solution

다른 풀이 방법도 코드의 표현방법만 다를 뿐, 모두 정렬을 이용했다.

%

아직 부족하지만 문제를 풀면서 주어진 문제에서 정렬을 이용하면 어떨까하는 생각을 하게 되었다. (접근 방법을 생각했다는 것에 나름 만족한다...)