[Programmers] 진료 순서 정하기

그래도 해야지·2023년 5월 7일
0

Programmers

목록 보기
32/40
post-thumbnail

문제 설명
외과의사 머쓱이는 응급실에 온 환자의 응급도를 기준으로 진료 순서를 정하려고 합니다. 정수 배열 emergency가 매개변수로 주어질 때 응급도가 높은 순서대로 진료 순서를 정한 배열을 return하도록 solution 함수를 완성해주세요.

🤔 해설

  1. slice()함수를 사용해서 원본 배열의 얕은 복사본을 만들고 내림차순 정렬을 해줍니다.
const sorted = emergency.slice().sort((a, b) => b - a)
  1. emergency 배열을 map을 돌려서 emergency배열의 원소들이 sorted에서 몇번째에 있는지 찾고 +1을 해줍니다.
return emergency.map(v => sorted.indexOf(v)+1)

✅ 답

function solution(emergency) {
    const sorted = emergency.slice().sort((a,b)=>b-a);
    return emergency.map(v=>sorted.indexOf(v)+1);
}

0개의 댓글