[ํ๋ก๊ทธ๋๋จธ์ค | Lv2] ๊ทค ๊ณ ๋ฅด๊ธฐ (Python)
https://school.programmers.co.kr/learn/courses/30/lessons/138476
ํ๋ก๊ทธ๋๋จธ์ค
์ฝ๋ ์ค์ฌ์ ๊ฐ๋ฐ์ ์ฑ์ฉ. ์คํ ๊ธฐ๋ฐ์ ํฌ์ง์ ๋งค์นญ. ํ๋ก๊ทธ๋๋จธ์ค์ ๊ฐ๋ฐ์ ๋ง์ถคํ ํ๋กํ์ ๋ฑ๋กํ๊ณ , ๋์ ๊ธฐ์ ๊ถํฉ์ด ์ ๋ง๋ ๊ธฐ์ ๋ค์ ๋งค์นญ ๋ฐ์ผ์ธ์.
programmers.co.kr
# ํ๋ก๊ทธ๋๋จธ์ค 138476: ๊ทค ๊ณ ๋ฅด๊ธฐ
def solution(k, tangerine):
dic = {}
for i in tangerine:
try: dic[i] += 1
except: dic[i] = 1
dic = dict(sorted(dic.items(), key=lambda x:x[1]))
n = len(tangerine) - k
cnt = len(dic)
i = 0
for key in dic:
i += dic[key]
if i < n:
cnt -= 1
elif i == n:
return cnt - 1
else:
return cnt
ํ ์คํธ 1 ใ | ํต๊ณผ (14.81ms, 13.2MB) |
ํ ์คํธ 2 ใ | ํต๊ณผ (11.53ms, 13.2MB) |
ํ ์คํธ 3 ใ | ํต๊ณผ (10.17ms, 13.4MB) |
ํ ์คํธ 4 ใ | ํต๊ณผ (12.05ms, 13MB) |
ํ ์คํธ 5 ใ | ํต๊ณผ (16.84ms, 11.2MB) |
ํ ์คํธ 6 ใ | ํต๊ณผ (16.76ms, 11.4MB) |
ํ ์คํธ 7 ใ | ํต๊ณผ (11.87ms, 12.2MB) |
ํ ์คํธ 8 ใ | ํต๊ณผ (9.55ms, 11.8MB) |
ํ ์คํธ 9 ใ | ํต๊ณผ (12.12ms, 11.6MB) |
ํ ์คํธ 10 ใ | ํต๊ณผ (14.29ms, 12.8MB) |
ํ ์คํธ 11 ใ | ํต๊ณผ (0.02ms, 10.1MB) |
ํ ์คํธ 12 ใ | ํต๊ณผ (0.01ms, 10.1MB) |
ํ ์คํธ 13 ใ | ํต๊ณผ (0.01ms, 10.3MB) |
ํ ์คํธ 14 ใ | ํต๊ณผ (0.01ms, 10.2MB) |
ํ ์คํธ 15 ใ | ํต๊ณผ (0.01ms, 9.98MB) |
ํ ์คํธ 16 ใ | ํต๊ณผ (0.01ms, 10.1MB) |
ํ ์คํธ 17 ใ | ํต๊ณผ (0.01ms, 10.2MB) |
ํ ์คํธ 18 ใ | ํต๊ณผ (0.01ms, 10.2MB) |
ํ ์คํธ 19 ใ | ํต๊ณผ (0.01ms, 10.1MB) |
ํ ์คํธ 20 ใ | ํต๊ณผ (0.02ms, 10.2MB) |
ํ ์คํธ 21 ใ | ํต๊ณผ (0.23ms, 10.2MB) |
ํ ์คํธ 22 ใ | ํต๊ณผ (0.73ms, 10.5MB) |
ํ ์คํธ 23 ใ | ํต๊ณผ (0.56ms, 10.4MB) |
ํ ์คํธ 24 ใ | ํต๊ณผ (0.78ms, 10.5MB) |
ํ ์คํธ 25 ใ | ํต๊ณผ (6.42ms, 11.7MB) |
ํ ์คํธ 26 ใ | ํต๊ณผ (19.90ms, 13.6MB) |
ํ ์คํธ 27 ใ | ํต๊ณผ (73.72ms, 35.6MB) |
ํ ์คํธ 28 ใ | ํต๊ณผ (40.32ms, 20.4MB) |
ํ ์คํธ 29 ใ | ํต๊ณผ (45.85ms, 25.7MB) |
ํ ์คํธ 30 ใ | ํต๊ณผ (77.48ms, 35.5MB) |
ํ ์คํธ 31 ใ | ํต๊ณผ (9.89ms, 12.4MB) |
ํ ์คํธ 32 ใ | ํต๊ณผ (11.69ms, 13.8MB) |
ํ ์คํธ 33 ใ | ํต๊ณผ (78.43ms, 26.7MB) |
ํ ์คํธ 34 ใ | ํต๊ณผ (56.12ms, 25.7MB) |
ํต๊ณผ๋ ํ์ง๋ง ์ข ์ง์ ๋ถํ๊ฒ ํ์๋๋ฐ,, ๋ค๋ค ๋ ๊น๋ํ๊ฒ ํ์ด์ ๋๋๋ค
tangerine์ ์์ ๊ฐ์๊ฐ ์ ์ฅ๋์ด ์๋ ๋์ ๋๋ฆฌ๋ฅผ ๋ง๋ ๋ถ๋ถ -> collections ๋ชจ๋์ Counter ํด๋์ค๋ก ๋ง๋ค ์ ์์
๋๋ value ๊ฐ์ผ๋ก ์ ๋ ฌํ ๋์ ๋๋ฆฌ๋ฅผ ๋ ํ๋ ๋ง๋ค์๋๋ฐ -> ๊ทธ๋ฅ value ๊ฐ์ผ๋ก ์ ๋ ฌํ ๋ฆฌ์คํธ๋ง ์์ผ๋ฉด ๋จ
๊ฐ์ ํ๋ณํ๋ ๋ถ๋ถ๋ ๋ค๋ค ๋ ๊น๋ํ ๋ฐฉ๋ฒ ์จ์ ํธ์๋๋ฐ ์๊ฐํ๊ธฐ ํ๋ค์ด์(^^..) ๊ทธ๋ฅ ๋ด๊ฐ ์ผ๋ ์๊ณ ๋ฆฌ์ฆ ๊ฑฐ์ ๊ทธ๋๋ก ์ผ๋ค!
# ํ๋ก๊ทธ๋๋จธ์ค 138476: ๊ทค ๊ณ ๋ฅด๊ธฐ
from collections import Counter
def solution(k, tangerine):
tan = sorted(Counter(tangerine).values())
answer = len(tan)
n = len(tangerine) - k
for i in tan:
if i < n:
answer -= 1
n -= i
elif i == n:
return answer - 1
else:
return answer
ํ ์คํธ 1 ใ | ํต๊ณผ (5.41ms, 13.1MB) |
ํ ์คํธ 2 ใ | ํต๊ณผ (9.16ms, 13.2MB) |
ํ ์คํธ 3 ใ | ํต๊ณผ (9.38ms, 13.5MB) |
ํ ์คํธ 4 ใ | ํต๊ณผ (6.28ms, 13.1MB) |
ํ ์คํธ 5 ใ | ํต๊ณผ (4.46ms, 11.2MB) |
ํ ์คํธ 6 ใ | ํต๊ณผ (5.05ms, 11.3MB) |
ํ ์คํธ 7 ใ | ํต๊ณผ (5.99ms, 12.6MB) |
ํ ์คํธ 8 ใ | ํต๊ณผ (10.49ms, 11.8MB) |
ํ ์คํธ 9 ใ | ํต๊ณผ (4.91ms, 11.6MB) |
ํ ์คํธ 10 ใ | ํต๊ณผ (6.09ms, 13MB) |
ํ ์คํธ 11 ใ | ํต๊ณผ (0.04ms, 10.4MB) |
ํ ์คํธ 12 ใ | ํต๊ณผ (0.03ms, 9.95MB) |
ํ ์คํธ 13 ใ | ํต๊ณผ (0.02ms, 10.3MB) |
ํ ์คํธ 14 ใ | ํต๊ณผ (0.02ms, 9.95MB) |
ํ ์คํธ 15 ใ | ํต๊ณผ (0.03ms, 9.95MB) |
ํ ์คํธ 16 ใ | ํต๊ณผ (0.02ms, 10.1MB) |
ํ ์คํธ 17 ใ | ํต๊ณผ (0.02ms, 10.2MB) |
ํ ์คํธ 18 ใ | ํต๊ณผ (0.02ms, 9.96MB) |
ํ ์คํธ 19 ใ | ํต๊ณผ (0.03ms, 10.1MB) |
ํ ์คํธ 20 ใ | ํต๊ณผ (0.02ms, 10.1MB) |
ํ ์คํธ 21 ใ | ํต๊ณผ (0.07ms, 9.9MB) |
ํ ์คํธ 22 ใ | ํต๊ณผ (0.15ms, 10.1MB) |
ํ ์คํธ 23 ใ | ํต๊ณผ (0.19ms, 10.2MB) |
ํ ์คํธ 24 ใ | ํต๊ณผ (0.19ms, 10.4MB) |
ํ ์คํธ 25 ใ | ํต๊ณผ (2.01ms, 11MB) |
ํ ์คํธ 26 ใ | ํต๊ณผ (3.41ms, 11.5MB) |
ํ ์คํธ 27 ใ | ํต๊ณผ (14.67ms, 21.8MB) |
ํ ์คํธ 28 ใ | ํต๊ณผ (14.78ms, 16.2MB) |
ํ ์คํธ 29 ใ | ํต๊ณผ (14.21ms, 17.9MB) |
ํ ์คํธ 30 ใ | ํต๊ณผ (17.43ms, 21.9MB) |
ํ ์คํธ 31 ใ | ํต๊ณผ (6.27ms, 12.7MB) |
ํ ์คํธ 32 ใ | ํต๊ณผ (6.15ms, 13.6MB) |
ํ ์คํธ 33 ใ | ํต๊ณผ (15.97ms, 18.1MB) |
ํ ์คํธ 34 ใ | ํต๊ณผ (19.05ms, 17.9MB) |
ใ ใ