코딩문제
베스트 앨범(코딩테스트 연습-해시)
JihyunLee
2022. 6. 10. 20:06
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
|
from collections import defaultdict
def solution(genres, plays):
answer = []
genres_count = defaultdict(int)
genres_song = defaultdict(list)
for i, (g,p) in enumerate(zip(genres, plays)):
genres_count[g] += p
genres_song[g].append([p,i])
G = len(genres_count)
for _ in range(G):
count_nums = list(genres_count.values())
genre_names = list(genres_count.keys())
max_num = max(count_nums)
max_genre_name = genre_names[count_nums.index(max_num)]
print(max_genre_name)
del genres_count[max_genre_name]
songs = genres_song[max_genre_name]
if len(songs) == 1:
answer.append(songs[0][1])
else:
songs =sorted(songs, key = lambda song:-song[0])
answer.append(songs[0][1])
answer.append(songs[1][1])
return answer
|
cs |