Algorithm/프로그래머스
[프로그래머스] 귤 고르기 - 파이썬
potato_pizza
2024. 6. 18. 00:18
728x90
귤 고르기
https://school.programmers.co.kr/learn/courses/30/lessons/138476
문제
코드
- 시간 초과 코드
def solution(k, tangerine):
answer = 0
tangerine.sort()
cnt = [0] * max(tangerine)
for i in range(max(tangerine)):
cnt[i]+= tangerine.count(i+1)
cnt.sort(reverse=True)
for j in cnt:
answer += 1
if k - j <= 0:
break
else:
k -= j
return answer
- collections를 사용해 각 인자의 개수를 정리
- value 값들을 정렬
- 그 다음은 동일
import collections
def solution(k, tangerine):
answer = 0
cnt = collections.Counter(tangerine)
cnt = sorted(cnt.values(), reverse=True)
for i in cnt:
answer += 1
k -= i
if k <= 0:
break
return answer
728x90
반응형