개요 - 난잡하게 풀었다. 가장 확실하지만 그만큼 무식하기도 한 풀이. - 객체의 정의는 주요 객체인 genre_obj로 정의했으며, 인덱스와 플레이타임 객체를 요소로 갖는 배열이 프로퍼티 값. genre_obj = {classic: [ {idx:--, play_time: --} ...], pop: [...]}; - sort 메서드를 이용해서 play_time 순으로 내림차순해준다. (이때 비교함수 작성시, return 값을 지정 안해주면 적용 안됨 주의하자) - sum_arr 배열이 장르 정보와 플레이시간 총합을 객체의 형태로 담고 있도록 한 후, 마찬가지로 sort 메서드를 통해 내림차순 해준다. - sum_arr 배열의 요소들을 key값으로 genre_obj의 요소들을 조건에 맞게 꺼내어 answe..
개요 - 문제는 굉장히 심플하며 풀이를 향한 길 또한 그리 다양하지 않아 보인다. - 해시 : 데이터를 다루는 기법 중 하나로, 검색과 저장을 아주 빠르게 진행함(대표적으로 Map 객체) + 데이터를 저장할 때 key-value형태로 데이터가 존재하고, key값이 배열의 인덱스로 저장되기 때문에 검색과 저장이 빠르게 일어남 JS CODE (1) function solution(participant, completion) { const map = new Map(); for(let i = 0; i < participant.length; i++) { let a = participant[i], b = completion[i]; map.set(a, (map.get(a) || 0) + 1); map.set(b, (..