매일 땡기는 마라 코딩

[프로그래머스] Lv.0 뒤에서 5등 위로 본문

알고리즘

[프로그래머스] Lv.0 뒤에서 5등 위로

cmkoi1 2023. 9. 18. 23:50

문제

 

 

과정

원래는

1. 배열 num_list를 sort를 사용해 오름차순 정렬하여 배열을 작은 수부터 재배치

2. 앞에서부터 5개의 배열 요소 삭제 -> 방법 몰랐음

3. 배열 num_list의 요소를 인덱스 0부터 끝까지 반복해서 배열 answer에 대입

 

이렇게 하려고 했는데, 친구의 도움으로 2번을 거치지 않는 방법이 있다는 걸 알게 되었음.

배열 인덱스 5번부터 대입하면 작은 수 5개 삭제도 해치울 수 있다는 것.

 

그리하여

1. 배열 num_list를 sort를 사용해 오름차순 정렬

2. 배열 num_list의 요소를 인덱스 5부터 끝까지 반복해서 배열 answer에 대입

 

 

코드

import java.util.*;

class Solution {
    public int[] solution(int[] num_list) {
        int[] answer = new int[num_list.length-5];
        int a = 0;
        
        Arrays.sort(num_list);
        
        for(int i = 5; i<num_list.length; i++){
            answer[a] = num_list[i];
            a++;
        }
        
        return answer;
    }
}
728x90