Hayden's Archive
[알고리즘] 프로그래머스 : 예산 본문
알고리즘 문제 출처 : 프로그래머스 https://programmers.co.kr/learn/courses/30/lessons/12982
내가 작성한 코드
배열 d를 오름차순으로 배열한 뒤 0번째 인덱스부터 차례대로 더해간다. 더했더니 합이 예산보다 클 경우에는 i를 저장하여 반환하고, 더했더니 예산과 같을 경우에는 i+1을 저장하여 반환하고, 그 외의 값(i보다 작은데 더 이상 더할 수 없는 경우)들은 차례대로 i+1을 저장해간 뒤 반복문이 끝나면 값을 반환한다.
import java.util.Arrays;
class Solution {
public int solution(int[] d, int budget) {
int answer = 0;
int total = 0;
Arrays.sort(d);
for(int i=0; i<d.length; i++){
total += d[i];
if(total > budget){
answer = i;
return answer;
}
if(total == budget){
answer = i+1;
return answer;
}
answer = i+1;
}
return answer;
}
}