https://school.programmers.co.kr/learn/courses/30/lessons/138476
def solution(k, tangerine):
dic = {}
answer = 0
for i in range(len(tangerine)): # 딕셔너리에 저장
if tangerine[i] in dic: # 키가 존재하면 +1
dic[tangerine[i]] += 1
else: # 키가 존재하지 않으면 1로 초기화
dic[tangerine[i]] = 1
# 딕셔너리의 value 오름차순 정렬
sorted_dic = dict(sorted(dic.items(), key = lambda x:-x[1]))
temp = 0 # 딕셔너리의 value를 더할 임시 변수
for i in sorted_dic.values():
answer += 1
temp += i
if temp >= k: # k보다 크거나 같으면 상자 꽉 참
break
return answer
lambda를 이용한 정렬이 핵심 포인트