해시2 [프로그래머스] 베스트앨범 (Python) https://programmers.co.kr/learn/courses/30/lessons/42579 코딩테스트 연습 - 베스트앨범 스트리밍 사이트에서 장르 별로 가장 많이 재생된 노래를 두 개씩 모아 베스트 앨범을 출시하려 합니다. 노래는 고유 번호로 구분하며, 노래를 수록하는 기준은 다음과 같습니다. 속한 노래가 programmers.co.kr 충분히 풀 수는 있지만 뭔가 코드가 효율적이지 않은 것 같은 느낌이 드는 풀이였다. 시간 복잡도는 O(N)이라 나쁘지 않을 수도? 1. 장르별로 값을 dict에 초기화해주고, 판매수는 큰 순으로, 같을 때 고유 번호는 작은 순으로 정렬한다. 2. 각 장르별로 총판매수를 구하고, 총판매수가 큰 순으로 장르를 정렬한다. 3. 판매수가 큰 장르부터 두 개씩 뽑아서 .. 2021. 10. 29. [프로그래머스] 위장 (Python) https://programmers.co.kr/learn/courses/30/lessons/42578 코딩테스트 연습 - 위장 programmers.co.kr 각 옷의 종류에 따라 dict를 초기화하고, 그 옷의 조합인 (N+1)*(M+1) -1 하면 된다. (-1은 모든 옷 종류 꺼내지 않았을 경우는 인정되지 않으므로 하나 빼 주는 것) 나의 풀이 from collections import defaultdict def solution(clothes): answer = 1 cloth_dict = defaultdict(list) for cloth in clothes: cloth_dict[cloth[1]].append(cloth[0]) for cloth in cloth_dict.values(): answer.. 2021. 10. 29. 이전 1 다음