-
문제:
외과의사 머쓱이는 응급실에 온 환자의 응급도를 기준으로 진료 순서를 정하려고 합니다. 정수 배열 emergency가 매개변수로 주어질 때 응급도가 높은 순서대로 진료 순서를 정한 배열을 return하도록 solution 함수를 완성해주세요.
입출력 예:
emergency result [3,76,24] [3,1,2] [1,2,3,4,5,6,7] [7,6,5,4,3,2,1] [30,10,23,6,100] [2,4,3,5,1] 풀이:
const solution =(emergency) =>{ let answer = [...emergency].sort((a,b)=> b - a); return emergency.map(el => answer.indexOf(el)+1) }
기존 emergency 배열을 변경하지 않으면서 복제하기 위해 [...emergency]을 사용한다. sort 메서드를 이요하여 내림 차순으로 정렬 후
answer 변수에 할당한다.
emergency.map을 통해 배열의 각 요소를 순회 하고 IndexOf(el)을 통해 각 요소의 인덱스를 찾아주며 응곱도가 높은 순서에 해당하는 순위를 나타낸다.
'코딩테스트 > LV0' 카테고리의 다른 글
외계행성의 나이 (0) 2023.08.07 배열자르기 (0) 2023.08.07 [코딩테스트LV-0]-프로그래머스 (중복된 숫자 개수) (0) 2023.03.26