K번째수(프로그래머스)

정승옥(seungok)·2020년 11월 13일
0

프로그래머스

목록 보기
4/40

문제설명

  • 배열 array의 i번째부터 j번째까지 자르고 정렬했을때 k번째 수 구하기
  • 배열 commands는 [i,j,k]를 원소로 가지는 2차원 배열

제한사항

  • array의 길이는 1 이상 100 이하
  • array의 각 원소는 1 이상 100 이하
  • commands의 길이는 1 이상 100 이하
  • commands의 각 원소는 길이가 3

풀이

function solution(array, commands) {
    let answer = [];
    for(let i=0;i<commands.length;i++){
        const command = commands[i];
        const newArr = array.slice(command[0]-1,command[1]).sort((a,b)=>a-b);

        answer.push(newArr[command[2]-1]);
    }
    return answer;
}

체크포인트

  • sort(), sort((a,b)=>a-b)의 차이점: compareFunction이 제공되지 않으면 요소를 문자열로 변환하고 유니 코드 코드 포인트 순서로 문자열을 비교하여 정렬
  • 예를 들어 "바나나"는 "체리"앞에 옴
  • 숫자 정렬에서는 9가 80보다 앞에 오지만 숫자는 문자열로 변환되기 때문에 "80"은 유니 코드 순서에서 "9"앞에 옴
profile
Front-End Developer 😁

0개의 댓글