https://school.programmers.co.kr/learn/courses/30/lessons/138476
ํ๋ก๊ทธ๋๋จธ์ค
์ฝ๋ ์ค์ฌ์ ๊ฐ๋ฐ์ ์ฑ์ฉ. ์คํ ๊ธฐ๋ฐ์ ํฌ์ง์ ๋งค์นญ. ํ๋ก๊ทธ๋๋จธ์ค์ ๊ฐ๋ฐ์ ๋ง์ถคํ ํ๋กํ์ ๋ฑ๋กํ๊ณ , ๋์ ๊ธฐ์ ๊ถํฉ์ด ์ ๋ง๋ ๊ธฐ์ ๋ค์ ๋งค์นญ ๋ฐ์ผ์ธ์.
programmers.co.kr
์ด ๋ฌธ์ ๋ ๊ทค k๊ฐ๋ฅผ ๊ณ ๋ฅผ ๋ ํฌ๊ธฐ๊ฐ ์๋ก ๋ค๋ฅธ ์ข ๋ฅ์ ์์ ์ต์๊ฐ์ ๊ตฌํ๋ ๋ฌธ์ ์ ๋๋ค.
๊ทธ๋ ๊ธฐ ๋๋ฌธ์ map์ ์ด์ฉํด ๊ฐ ํฌ๊ธฐ๋ณ ๊ฐ์๋ฅผ ์ ์ฅํ๊ณ , ๊ฐ์๋ฅผ ๊ธฐ์ค์ผ๋ก ๋ด๋ฆผ ์ฐจ์ ์ ๋ ฌํ์ฌ ์นด์ดํ ํด์ฃผ๋ฉด ๋๋ ๋ฌธ์ ์ ๋๋ค.
function solution(k, tangerine) {
const map = new Map()
for(const size of tangerine){
map.set(size, (map.get(size)||0)+1)
}
const tmp = [...map]
tmp.sort((a,b)=>b[1] - a[1])
let ans = 0
for(let i=0; i<tmp.length; i++){
k-= tmp[i][1]
ans++
if(k <= 0) break
}
return ans
}
'๐ Study Note > ํ๋ก๊ทธ๋๋จธ์ค' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
์ง์ง์ด ์ ๊ฑฐํ๊ธฐ - LV. 2 (0) | 2022.12.10 |
---|