https://school.programmers.co.kr/learn/courses/30/lessons/120835
프로그래머스
코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.
programmers.co.kr


function solution(emergency) {
let answer = [];
const arr = [...emergency]
emergency.sort((a,b) => b-a);
arr.map((e) => {
answer.push(emergency.indexOf(e)+1)
})
return answer;
}
가장 먼저 입력받은 emergency를 복사하여 새로운 배열인 arr를 생성해주었다.
(sort 메서드를 사용하면 기존 emergency가 바뀌기 때문이다.)
그다음 map을 사용하여 arr를 돌면서
indexOf를 사용해 내림차순 된 배열에서 해당 원소의 위치를 구하고 1을 더한 값을
answer에 넣어주었다.
(indexOf는 해당 배열에서 원소의 인덱스를 구해주는 것인데, 우리는 1부터 순위를 매기기 때문이다.)
'코딩테스트 > Programmers' 카테고리의 다른 글
| 숨어있는 숫자의 덧셈 (2) (Python) (0) | 2023.07.17 |
|---|---|
| 튜플 (Python) (0) | 2023.06.01 |
| 최빈값 구하기 (JS) (0) | 2022.12.04 |
| 이진 변환 반복하기 (JS) (0) | 2022.09.13 |
| 올바른 괄호 (JS) (0) | 2022.09.13 |