solution(6, [1, 3, 2, 5, 4, 5, 2, 3]) // 3
solution(4, [1, 3, 2, 5, 4, 5, 2, 3]) // 2
solution(2, [1, 1, 1, 1, 2, 2, 2, 3]) // 1
function solution(k, tangerine) {
let obj = {};
for(let i = 0; i < tangerine.length; i++) {
if(!obj[tangerine[i]]) {
obj[tangerine[i]] = 1;
} else {
obj[tangerine[i]]++;
}
}
const kind = Object.values(obj).sort((a, b) => b - a);
let sum = 0;
let answer = 0;
for (let num of kind) {
answer++;
sum += num;
if (sum >= k) break;
}
return answer;
}
출처: 프로그래머스
유익한 정보를 제공해주셔서 감사합니다.