https://school.programmers.co.kr/learn/courses/30/lessons/138476
프로그래머스
코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.
programmers.co.kr
1. 문제 해결 방법
1. Counter 를 이용해 key 와 value 값을 구한다. (=> 귤의 크기에 따른 개수가 카운팅된다.)
2. list명.values() 를 출력하면 오름차순 정렬되기 때문에 reverse = True 로 내림차순 정렬한다.
3. 각 value 값을 하나씩 뽑으며 k보다 크거나 같으면 cnt 를 return 시키고, k보다 작으면 cnt를 1 증가시킨다.
2. 내가 작성한 코드
from collections import Counter
def solution(k, tangerine):
tangerine = Counter(tangerine)
result = 0 #상자에 담은 귤 개수
cnt = 0 #상자에 담은 귤의 종류 수
value = sorted(list(tangerine.values()),reverse=True)
for i in value:
result += i
cnt+=1
if result >= k: #상자에 담긴 귤이 k개보다 크거나 같으면 return
return cnt
'🔅코딩테스트 공부🔅 > ❗프로그래머스(Lv.2)' 카테고리의 다른 글
[프로그래머스] Level2 덧칠하기(python) (0) | 2023.03.06 |
---|---|
[프로그래머스] Level2 예상 대진표(python) (0) | 2023.03.05 |
[프로그래머스] Level2 무인도 여행(python) (0) | 2023.02.20 |
[프로그래머스] Level2 숫자의 표현(python) (0) | 2023.02.19 |
[프로그래머스] Level2 게임 맵 최단거리(python) (0) | 2023.02.10 |
댓글