k번째 수(프로그래머스 Lv.1)

김도영·2022년 8월 22일
0

function solution(array, commands) {

let answer=[];
let sliced_array=[];
let sorted_sliced_array=[];

for(let i=0; i<commands.length; i++){
    sliced_array=array.slice(commands[i][0]-1,commands[i][1]);
    sorted_sliced_array=sliced_array.sort();
    answer[i]= sorted_sliced_array[commands[i][2]-1];
    }
return answer;

}


위의 코드로 했더니 자꾸 test2에서 오류가 남. (return값은 문제없었음)
30.1MB가 문제인가 싶어서 용량 줄이려고 변수명이랑 이것저것 영혼까지 줄여봤지만


계속 '실패'가 떠서
할 수 없이 구글링을 했음.
(원인 : sort 메소드를 그대로 사용하면 문자로 인식하는 부분에서 오류)
오름차순 정렬을 (a,b)=>a-b 요거로 해주니 해결됨

function solution(ar, com) {
let ans=[];
let sliced=[];
let sorted=[];

for(let i=0;i<com.length;i++){
     sliced=ar.slice(com[i][0]-1,com[i][1]);
     sorted=sliced.sort((a,b)=>(a-b));
     ans[i]= sorted[com[i][2]-1];
    }
return ans;
}
profile
김도영

0개의 댓글