프로그래머스
[프로그래머스] 폰켓몬 (javascript)
해랑쓰
2021. 3. 18. 14:05
728x90
반응형
만약 중복되지 않은 수가 n/2개와 같거나 크면 최대 개수는 n/2이다.
{2,2,3,4,5,6} => {2,3,4,5,6} => 5개 중에 아무거나 3개 뽑으면 된다.
만약 중복되지 않은 수가 n/2보다 작다면 아무리 많은 경우가 있어도 최대 중복되지 않은 개수이다.
{2,2,2,2,3,3,3,3} => {2,3} <- 아무리 2와 3을 더 넣어도 중복되지 않은 개수는 변하지 않는다.
function solution(nums) {
const len=nums.length;
const set=new Set();
for(let i=0;i<nums.length;i+=1){
set.add(nums[i]);
}
if(set.size>=len/2)return len/2;
return set.size;
}
728x90
반응형