Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | ||||||
2 | 3 | 4 | 5 | 6 | 7 | 8 |
9 | 10 | 11 | 12 | 13 | 14 | 15 |
16 | 17 | 18 | 19 | 20 | 21 | 22 |
23 | 24 | 25 | 26 | 27 | 28 |
Tags
- 백준 온라인 저지
- 안드로이드 공부
- UIKit
- 백준온라인저지
- 정렬
- error
- greedy algorithm
- 그리디 알고리즘
- 파이썬 풀이
- 앱개발
- BFS
- Kotlin
- ios
- swift
- 오토레이아웃
- Algorithm
- 공부
- dfs
- SwiftUI
- 알고리즘
- Autolayout
- iOS개발
- Python
- Swift공부
- 알고리즘 공부
- Level 1
- Clean Architecture
- Android
- 파이썬
- 프로그래머스
Archives
- Today
- Total
Tori의 개발 공부
[Level 2] [python] 귤 고르기 본문
문제
파이썬 풀이
from collections import Counter
def solution(k, tangerine):
cnt = Counter(tangerine)
answer = 0
box = 0
for i in cnt.most_common() :
box += i[1]
answer += 1
if box >= k :
break
return answer
Counter 클래스를 사용하여 문제를 해결하였다.
우선 Counter클래스를 통해 크기 별로 몇 개의 귤을 가지고 있는지 계산을 한다.
Counter클래스의 most_common() 메서드를 통해 귤 개수를 내림차순으로 정리한 리스트를 반복문으로 돌며
가장 많은 개수를 가진 귤부터 box에 넣어준다. (box변수는 현재 box안에 들어 있는 귤의 개수를 의미한다.)
해당 크기의 귤을 넣으면 answer(귤 크기 종류 수) 값을 1늘려주며
현재 박스에 들어있는 귤의 수가 k개를 도달하게 되면 반복문을 끝내고 answer을 반환한다.
'Algorithm > 프로그래머스 문제 풀이' 카테고리의 다른 글
[Level 1][python] 명예의 전당 (1) (0) | 2022.11.24 |
---|---|
[Level 2] [python] 롤케이크 자르기 (0) | 2022.11.19 |
[Level 1] [python] 기사단원의 무기 (0) | 2022.11.17 |
[Level 1] [python] 크레인 인형뽑기 게임 (0) | 2022.01.20 |
[Level 1] [python] 실패율 (0) | 2022.01.03 |