https://school.programmers.co.kr/learn/courses/30/lessons/138476
[풀이]
from collections import Counter
def solution(k, tangerine):
total = 0
answer = 0
for i, v in Counter(tangerine).most_common(k):
total += v
answer += 1
if total >= k:
return answer
- Counter로 가장 많은 귤의 크기로 정렬한 뒤
- total에 귤의 개수를 더하면서, 한 크기의 귤당 answer에 1을 더한다.
- total이 주어진 k를 넘으면 answer를 리턴
[풀이 후기]
Counter를 알고 있어서 쉽게 풀었는데, 조금만 다르게 나왔으면 다른 방식으로 접근할 수 있을까란 생각이 들었다. 알고리즘 지식 자체를 적용하는 것보다 지금은 차라리 이렇게 생각하는 문제들이 더 쉽다고 느껴지는 것 같습니다.. 알고리즘 공부를 열심히해야겠딩..
'코딩테스트 스터디 > 프로그래머스' 카테고리의 다른 글
[LV 2/정렬] 가장 큰 수 (0) | 2023.07.15 |
---|---|
[LV2/해시] 의상 (0) | 2023.07.15 |
[LV2/해시] 전화번호 목록 (0) | 2023.07.15 |
[LV2 SQL] 조건에 맞는 도서와 저자 리스트 출력하기(JOIN 에서 WHERE 와 ON 의 차이) (0) | 2023.07.14 |
[LV1] 가장 가까운 같은 글자 (0) | 2023.07.14 |