[프로그래머스] 귤 고르기

 

문제

from collections import Counter

def solution(k, tangerine):
    answer = 0  # 필요한 귤 크기 종류 수를 저장할 변수
    dic = Counter(tangerine)  # 귤 크기별로 개수를 세어서 딕셔너리로 저장
    dic = sorted(dic.items(), key=lambda x: x[1], reverse=True)  # 개수를 기준으로 내림차순 정렬
    
    t = 0  # 현재까지 선택한 귤의 개수를 저장할 변수
    while t < k:  # 선택한 귤의 개수가 k보다 작을 동안 반복
        t += dic[answer][1]  # 가장 많은 개수를 가진 귤 크기부터 선택
        answer += 1  # 필요한 귤 크기 종류 수 증가
    
    return answer  # 최소한의 귤 크기 종류 수 반환