일단 객체 형태로 키와 카운트를 구한다. 처음부터 이중배열로 할 수도 있는데 일단 편한 객체로 구했다. 일을 두 번 한 거 같지만 푸는 게 먼저라는 생각에 이렇게 풀었다.
[96, 1] 이런 식으로 이중배열로 바꾼다. 이 문제 핵심은 상위 3등 안에 드는 학생 수를 중복 가능하게 고르는 것이니까 배열로 만들어서 slice로 잘라야 한다!
이중배열을 점수별로 정렬한다
slice로 인덱스가 2까지 뽑아서 reduce로 밸류만 더한다.
while로 순회하면서 pop, push로 해버렸다. 일종의 큐인가!?
--> split과 sort를 한꺼번에 처리하고 새로운 arr에 push하면서 중복체크와 상위 3개 자르기를 한꺼번에!
출처 : 제주코딩테스트캠프