def solution(genres, plays):
dic, hap = {}, {}
i = 0
for g, p in zip(genres, plays):
if g not in dic:
dic[g] = [[p, i]]
hap[g] = p
else:
dic[g].append([p, i])
hap[g] += p
i += 1
s_hap = sorted(hap.items(), key=lambda x: x[1], reverse=True)
ret = []
for k, _ in s_hap:
lst = sorted(dic[k], key=lambda x: x[0], reverse=True)
if len(lst) > 2: lst = lst[:2]
for _, num in lst:
ret.append(num)
return ret
programmers.co.kr/learn/courses/30/lessons/42579#
'알고리즘 > 프로그래머스(Python)' 카테고리의 다른 글
bfs - 타겟 넘버 / 파이썬 (0) | 2020.11.02 |
---|---|
완전탐색 - 소수 찾기 / 파이썬 (0) | 2020.11.01 |
해시 - 전화번호 목록 / 파이썬 (0) | 2020.10.30 |
[알고리즘] 프로그래머스 비밀지도 / python, 비트연산자 (0) | 2020.05.07 |
[알고리즘] 프로그래머스 프렌즈4블록 / python (0) | 2020.05.06 |