프로그래머스/Lv. 1 - 자바

명예의 전당 (1)

EH헌 2024. 2. 5. 22:59

풀이

import java.util.*;

class Solution {
    public int[] solution(int k, int[] score) {
        ArrayList<Integer> list = new ArrayList<>();
        ArrayList<Integer> list2 = new ArrayList<>();
        for(int i=0; i<score.length; i++){
            if(i<k){
                list.add(score[i]);
                Collections.sort(list, Collections.reverseOrder());

                list2.add(list.get(list.size()-1));
            }else{
                Collections.sort(list, Collections.reverseOrder());
                if(score[i] >= list.get(list.size()-1)){
                    list.remove(list.size()-1);
                    list.add(score[i]);
                Collections.sort(list, Collections.reverseOrder());
                list2.add(list.get(list.size()-1));
                }else{
                   
                list2.add(list.get(list.size()-1));
                    
                }
            }
        }
        int[] answer = new int[list2.size()];
		for (int p = 0; p < answer.length; p++) {
			answer[p]=list2.get(p).intValue();
		}
        return answer;
    }
}

 

 

프로그래머스

코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.

programmers.co.kr

 

ArrayList로 하나 넣고 비교하고 제거하고 이런 식으로 풀이를 했는데

Queue로 하는 법도 공부해야겠다..!