프로그래머스/LEVEL 3
베스트 앨범
GenieLove!
2022. 4. 20. 19:46
728x90
반응형
Python
def solution(genres, plays):
"""
music_dict = {
"classic" : [total_plays, [index1, plays1], [index2, plays2]],
"pop" : [total_plays, [index1, plays1], [index2, plays2]],
}
"""
music_dict = dict()
answer = []
for i in range(len(genres)):
if music_dict.get(genres[i]):
music_dict[genres[i]][0] += plays[i]
else:
music_dict[genres[i]] = [plays[i]]
music_dict[genres[i]].append([i, plays[i]])
#music_dict key를 total_plays기준으로 역순 정렬하여 접근
for genre in sorted([key for key in music_dict], key=lambda x: -music_dict[x][0]):
play_list = music_dict[genre][1:]#total_plays값을 뺀 [index1, play1] list 값에 접근
play_list.sort(key=lambda x: -x[1])# play1 값 기준으로 역순 정렬
for l in play_list[:min(len(play_list), 2)]:#길이가 1이면 1까지만 접근하도록 for문 작성
answer.append(l[0])
return answer
728x90
반응형