프로그래머스 | K번째 수

Autumn·2021년 1월 24일
0

알고리즘

목록 보기
5/6
post-thumbnail

문제 바로가기

걸린 시간: 약 30분

코드

function solution(array, commands) { 
  const answer = commands.map(command => {
    const i = command[0];
    const j = command[1];
    const k = command[2];
    
    return array.slice(i - 1, j).sort((a, b) => a - b)[k - 1]
  })
  return answer;
}

쉬운 문제였는데 한 가지 간과한 것이 있어서 자꾸 틀렸다. 함수 블럭에서 여러줄 쓸 때는 return을 써줘야 한다는 것 !!!
return 안 쓰고 계속 command = array.slice(i - 1, j).sort((a, b) => a - b)[k - 1] 상태에서 디버깅해보면서 command가 제대로 들어갔는데 왜 자꾸 undefined래? 이러고 있었다. 🤦🏻


개선

Destructuring을 적극 사용해보도록 하자. 간단하고, 직관적이고, 코드 양도 줄어든다.

function solution(array, commands) { 
  const answer = commands.map(command => {
    const [i, j, k] = command;
    return array.slice(i - 1, j).sort((a, b) => a - b)[k - 1]
  })
  return answer;
}

끝!

profile
한 발짝씩 나아가는 중 〰 🍁 / 자잘한 기록은 아래 🏠 아이콘에 연결된 노션 페이지에 남기고 있어요 😎

0개의 댓글