문제를 보고 반복문 없이 풀 수 있을 것 같은데...
생각을 하다가 오래 걸렸다...
하지만! 반복문 없이 문제를 풀어냈다.
먼저,
score.map((element, index)=>
{
if(index < k) return min = element < min ? element : min;
})
로 현재 index(일차)가 명예의 전당 커트라인 개수 보다 적으면,
return min = element < min ? element : min;
으로 가장 작은 값을 리턴해줬다.
그 밖의 경우(일차가 명예의 전당 컷트라인보다 클 경우)(여기에서 오래 걸림)
score.map(~~~)함수가 동작하기 이전
let temp = [] 라는 일차 별 점수를 내림차순 정렬할 배열을 새로 만들어줬다.
이후,
return score.map((element, index)=>
{
temp.push(element)
temp.sort((a, b)=> b - a)
if(index < k) return min = element < min ? element : min;
else return temp[k - 1]
})
으로 return temp[k - 1]로 temp에 내림차순 정렬된
커트라인 점수를 반환해주었다.
제출한 코드 :
function solution(k, score)
{
let temp = []
let min = score[0];
return score.map((element, index)=>
{
temp.push(element)
temp.sort((a, b)=> b - a)
if(index < k) return min = element < min ? element : min;
else return temp[k - 1]
})
}
'JavaScripts 문제' 카테고리의 다른 글
문제 55. 카드 뭉치(난이도 7)(shift) (0) | 2024.08.02 |
---|---|
문제 54. (중요)2016년(난이도 10)(Date Class) (0) | 2024.08.02 |
문제 52. 콜라 문제(난이도 7) (0) | 2024.07.31 |
문제 51. 푸드 파이트 대회(난이도 3) (0) | 2024.07.31 |
문제 50. 가장 가까운 같은 글자(난이도 5)(lastIndexOf) (0) | 2024.07.31 |