코딩테스트 연습
프로그래머스 코딩테스트 연습 - 명예의 전당 (1) JavaScript
citron031
2022. 12. 5. 22:34
function solution(k, score) {
const answer = [];
let legend = [];
for(let i of score) {
if(legend.length < k) {
legend.push(i);
}else {
legend.sort((a, b) => a - b);
if(legend[0] < i) {
legend[0] = i;
}
}
answer.push(Math.min(...legend));
}
return answer;
}
- 가장 낮은 숫자의 점수를 매번 새로운 점수와 비교하여 가장 높은 최상위 점수 k를 유지하는 것이 중요했던 문제였다.
- 힙정렬을 통해서 값이 매번 들어올 때 정렬해주는 알고리즘을 구현했으면 더 좋았겠지만, 간단하게 구현하였다.