๋ฌธ์
https://school.programmers.co.kr/learn/courses/30/lessons/138476?language=python3
ํ์ด
# ํ๋ก๊ทธ๋๋จธ์ค 2๋จ๊ณ - ๊ทค ๊ณ ๋ฅด๊ธฐ
from collections import Counter
def solution(k, tangerine):
answer = 0
d = sorted(Counter(tangerine).items(), key = lambda x : -x[1])
for key, value in d:
if k <= 0:
break
k -= value
answer += 1
return answer
๋งจ ์ฒ์ ๋ฌธ์ ๋ฅผ ๋ดค์ ๋ defaultdict๋ฅผ ์ฌ์ฉํด์ ๋ฌธ์ ๋ฅผ ํด๊ฒฐํ๋ ค๊ณ ํ๋ค.
defaultdict๋ฅผ ์ฌ์ฉํ๋ฉด list๋ก ๋ค์ ๋ณํํด ์ค์ผํ๊ณ ๋ฒ๊ฑฐ๋ก์์ Counter ๋ฅผ ์ฌ์ฉํ์๋ค.
Key๋ฅผ ๊ทค์ ํฌ๊ธฐ, ๊ทค์ ํฌ๊ธฐ ๊ฐ์๋ฅผ value ๊ฐ์ผ๋ก ๊ฐ๋ ๋์ ๋๋ฆฌ๋ฅผ value ๊ธฐ์ค์ผ๋ก ๋ด๋ฆผ์ฐจ์ ์ ๋ ฌํ ํ
k ๊ฐ 0 ๋ณด๋ค ์๋ค๋ฉด ๋ฉ์ถ๊ณ ๊ทธ๋ ์ง ์๋ค๋ฉด k ์์ value ๊ฐ์ ๋นผ์ฃผ๊ณ ๋์ answer ๋ฅผ 1 ๋ํด์ค๋ค.
- lambda x : -x[1]์ ํด์ฃผ๋ฉด ๋ด๋ฆผ์ฐจ์ ์ ๋ ฌ์ด ๋๋ค. == sort(reverse=True)
'๐๏ธ Algorithm > โฌ ํ๋ก๊ทธ๋๋จธ์ค' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
โฌ [Programmers] [Python] Level2_์ฐ์ ๋ถ๋ถ ์์ด ํฉ์ ๊ฐ์ (0) | 2023.04.06 |
---|---|
โฌ [Programmers] [Python] Level2_์์ฅ (0) | 2023.04.06 |
โฌ [Programmers] [BFS/DFS] [Python] Level2_H-Index (0) | 2023.02.14 |
โฌ [Programmers] [BFS/DFS] [Python] Level3_๋คํธ์ํฌ (0) | 2023.02.11 |
โฌ [Programmers] [DP] [Python] Level3_์ ์ ์ผ๊ฐํ (0) | 2023.02.11 |