이 문제의 경우 honor(k 길이까지 랭크를 보관할 배열)과 lowerRank(시즌마다 최하위를 보관할 배열)을 설정하여 score의 길이만큼 for문을 돌리면서 점수들을 honor과 lowerRank에 push를 하는데,
한 사이클 마다 sort 메서드로 낮은 점수가 뒤에 오도록 합니다.(물론 앞에 와도 상관 없습니다.) 그 후 honor 배열과 push에 push를 하고 honor 배열의 길이가 k값보다 큰 경우 뒷자리를 pop(가장 낮은 점수) 시키고 honor의 멘 뒷자리를 또 push 해줍니다.
function solution(k, score) { let honor = [] let lowerRank = [] for(let i = 0 ; i < score.length ; i++){ honor.push(score[i]) honor.sort((a,b) => b-a); if(honor.length > k){ honor.sort((a,b) => b-a); honor.pop(); } lowerRank.push(honor[honor.length-1]); } return lowerRank } }