JAVASCRIPT/코딩테스트
[프로그래머스] 0단계 - 등수 매기기
예글
2024. 1. 31. 16:16
1. 문제 설명
2. 답안
function solution(score) {
let arr = []
for(let item of score){
let [eng, math] = item
arr.push((eng + math) / 2)
}
let answer = [...arr].sort((a,b) => b - a)
return arr.map(x => answer.indexOf(x) + 1)
}
- 처음에 reduce로 객체 만들어서 시도하였으나,, 그렇게 하니까 중복된 값이 사라져서 다른 방법으로 시도,,
- sort는 원본 배열을 수정하므로 얕은 복사를 통해 answer에 할당
- indexOf는 값에 해당하는 첫번째 인덱스를 반환해주니 중복된 값도 그 첫번째 인덱스로 들어가서 해결!