프로그래머스 LEVEL 1(명예의 전당(1))
-
사용 언어 : javascript
-
해결 날짜 : 2022-11-27
- 해결 방법 :
- score을 돌며 현재 명예의 전당에 올라간 가수의 수가 k보다 적을 경우
- 명예의 전당에 올리고, 내림차순 정렬
- 명예의 전당에 올라간 가수의 수가 k와 같을 경우
- 현재 점수와 명예의 전당의 최하위 점수와 비교하여 현재 점수가 클 때 update
- 명예의 전당의 최하위 점수 answer에 추가
- score을 돌며 현재 명예의 전당에 올라간 가수의 수가 k보다 적을 경우
- 회고 :
- x
-
코드
function solution(k, score) { const answer = []; const hallOfFame = []; for (const s of score) { if (hallOfFame.length < k) { hallOfFame.push(s); hallOfFame.sort((a, b) => b - a); } else { const temp = hallOfFame.pop(); if (temp < s) { hallOfFame.push(s); hallOfFame.sort((a, b) => b - a); } else { hallOfFame.push(temp); } } answer.push(hallOfFame[hallOfFame.length - 1]); } return answer; }
- 출처: 프로그래머스 코딩 테스트 연습, https://school.programmers.co.kr/learn/challenges