본문 바로가기

CS/알고리즘

k번째수

function solution(array, commands) {
    var answer = [];

    for(let i = 0; i < commands.length; i++ ) {        
        const splitArray = array.slice(commands[i][0]-1, commands[i][1]).sort((a, b) => a-b);
        const tmpAnswer = splitArray[commands[i][2]-1]
        answer.push(tmpAnswer);
    }

    return answer;
}

slice 두번째 인자로 "commands[i][1] -1"을 줘버려가지고 헤맸다.

역시 문법에 익숙해져야합니다 .

 

sort 정렬이 무조건 낮은 순서대로 되는게 아니다. [1, 2, 10, 3] 이렇게 있는 것을 .sort() 하면 [1, 10, 2, 3]이 리턴된다. !

sort((a, b) => a-b); // 이 방식이 [1,2,3,10]으로 정렬되게 하는 방법!