youngik

해시 (베스트앨범) 본문

programmers

해시 (베스트앨범)

youngik 2021. 4. 17. 14:12

이번 문제는 '상'문제에 분류되는 문제였고 처음에 생각하기에는 쉬웠지만

데이터를 한꺼번에 정렬을 해야한다는 생각에 사로잡혀서 제대로 문제를 풀지 못하고

다른 사람의 풀이를 조금 보고 풀었던 문제였다ㅠ (아직도 갈길이 멀다,,)

 

먼저 위 문제를 분석해봤을 때,

1. genre별 합을 구해서 내림차순으로 정렬한다.

2. 각 genre별 2개의 고유번호를 출력한다. (장르가 1개일 때는 1개 출력)

 

*구현과정

1) genre의 합을 구할 때에는 hashmap의 getorDefault() 함수를 이용해서 카운트를 하고

2) list에 넣어서 collection.sort()를 하거나 compare() 함수를 overwriting해서 내림차순으로 정렬을 한다.

3) genre별로 새로운 hash를 만들어서 genres[] 배열에 있는 장르와 일치할 때 삽입

4) 이후 다시 list에 넣고 내림차순 정렬해서 2개씩 출력하기

 

*출처 : programmers.co.kr/learn/courses/30/lessons/42579

'programmers' 카테고리의 다른 글

힙 (이중우선순위큐)  (0) 2021.04.18
정렬 (가장 큰 수)  (0) 2021.04.17
힙 (더 맵게)  (0) 2021.04.12
해시 (위장)  (0) 2021.04.10
해시 (완주하지 못한 선수)  (0) 2021.04.09
Comments