# 불필요한 array 또는 dictionary를 만들지 않도록 try, except를 사용해서 풀었습니다.
# 또한 dictionary의 value 값을 기준으로 정렬하기 위해 key=lamda x:x[1]을 사용했습니다!
def solution(k, tangerine):
dic, cnt = {}, 0
for i in tangerine:
try: dic[i] += 1
except: dic[i] = 1
dic = sorted(dic.items(), key=lambda x:x[1], reverse=True)
for i in range(len(dic)):
k -= dic[i][1]
cnt += 1
if k <= 0: break
return cnt
'알고리즘' 카테고리의 다른 글
[프로그래머스] H-Index (0) | 2023.06.19 |
---|---|
[프로그래머스] 괄호 회전하기 (0) | 2023.06.15 |
[프로그래머스] 멀리 뛰기 (2) | 2023.06.13 |
[프로그래머스] N개의 최소공배수 (0) | 2023.06.13 |
[프로그래머스] 점프와 순간 이동 (0) | 2023.06.12 |