seunghyun Note
[프로그래머스] - 명예의 전당 with JAVA 본문
728x90
반응형
링크 :https://school.programmers.co.kr/learn/courses/30/lessons/138477
문제 풀이
1. score를 순회시킨다.
2. 순회해서 명예의 전당(ArrayList) 내에 원소를 add한다.
3. 원소를 넣고 sort를 한다.(Collections.sort(list))
4. 원소의 갯수가 3개가 넘을 경우 (sort 후에) 끝 값을 제거한다 (list.remove(0))
5. 발표 점수(answer 배열)에 첫번째 값(list.get(0))을 넣는다.
import java.util.ArrayList;
import java.util.Collections;
import java.util.Iterator;
class Solution {
public int[] solution(int k, int[] score) {
int[] answer = new int[score.length];
ArrayList<Integer> list = new ArrayList<Integer>();
//1. score를 순회시킨다.
for (int i = 0; i < score.length; i++) {
// 2. 순회해서 명예의 전당(ArrayList) 내에 원소를 add한다.
list.add(score[i]);
// 3. 원소를 넣고 sort를 한다.(Collections.sort(list))
Collections.sort(list);
//4. 원소의 갯수가 k개가 넘을 경우 (sort 후에) 끝 값을 제거한다 (list.remove(0))
if(list.size() > k) {
list.remove(0);
}
answer[i] = list.get(0);
//5. 발표 점수(answer 배열)에 첫번째 값(list.get(0))을 넣는다
System.out.println(answer[i]);
}
return answer;
}
}
public class CodingTest {
public static void main(String[] args) {
Solution s = new Solution();
int k = 4;
int[] score = { 0, 300, 40, 300, 20, 70, 150, 50, 500, 1000};
s.solution(k, score);
}
}
728x90
반응형
'코딩테스트 > 백준' 카테고리의 다른 글
[프로그래머스] -푸드 파이트 대회 with JAVA (0) | 2024.01.06 |
---|---|
[프로그래머스] - 두개 뽑아서 더하기 with JAVA (0) | 2024.01.05 |
[프로그래머스] - 콜라 문제 with JAVA (0) | 2024.01.05 |
[프로그래머스] - JadenCase 문자열 만들기 with JAVA (1) | 2024.01.04 |
[프로그래머스] - 최솟값 만들기 with JAVA (1) | 2024.01.04 |