이번 문제는 기존에 풀었던 문제보다 어려울 거 같아서 풀어보자고 한 건데 생각보다 넘 쉬웠당.......ㅋ

처음엔 또 문제를 잘못 읽어서 겁나 어렵겠다~ 했는데 잘못 읽은 거였다 ㅎㅎ

 

암튼~! 그래서!

 

 

 

☞ 문제

 

 

 

 

☞ 코드

 

 

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
package algo01;
 
 
public class budget {
    
    public static void main(String[] args) {
    
        int[] d = {2233};
        solution(d, 10);
    }
    
    
    public static int solution(int[] d, int budget) {
        
        int hap = 0;
        int answer = 0;
        
        Arrays.sort(d);
 
        for(int i = 0; i < d.length; i++) {
            hap += d[i];
            System.out.println(hap);
            
            if(hap <= budget) {
                answer = i + 1;
            }
        }
        
        System.out.println("answer = " + answer);
        
        return answer;
    }
}
 
http://colorscripter.com/info#e" target="_blank" style="color:#4f4f4f; text-decoration:none">Colored by Color Scripter
 

 

우선 배열에 있는 값들을 오름차순으로 정렬을 하고 나서 for문을 돌리는 게 더 효율적이라고 생각돼서 Arrays.sort() 메서드를 썼다. <완주하지 못한 선수> 를 풀 때도 Arrays.sort() 메서드를 사용했었는데, 이 메서드는 진짜 좋은 메서드다....

Arrays.sort() 최고....

 

 

 

☞ 실행결과

 

 

 

 

 

(정확성은 100이니까 참고해도 됩니당...)

 

 

'Algorithm' 카테고리의 다른 글

124 나라의 숫자  (0) 2019.05.27
모의고사  (1) 2019.05.12
콜라츠 추측  (0) 2019.04.28
시저 암호  (1) 2019.04.25
나누어 떨어지는 숫자 배열  (2) 2019.04.22

+ Recent posts