✏️기록하는 즐거움
article thumbnail

 

프로그래머스

코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.

programmers.co.kr

 

|  제출

function solution(nums) {
    const newNums = new Set(nums);
    const count = parseInt(nums.length / 2);
    
    return (newNums.size >= count) ? count : newNums.size;
}

 

|  풀이과정

가장 많은 종류의 폰켓몬을 데려가려면 중복되는 것이 없어야 한다.

 

1) 폰켓몬 종류 번호가 담긴 배열 nums를 Set 자료구조로 만든다.

2) 중복되지 않은 폰켓몬의 수(Set.size())가 가져갈 수 있는 최대 수인 N/2마리보다 많다면 N/2마리가, 그렇지 않다면 Set.size()값이 최대값이 된다.

 

|  개념

Set

  • Set은 중복되지 않은 유일한 값으로 이루어진 콜렉션 객체이다.
  • new 연산자로 객체를 생성할 수 있다.
const mySet = new Set();
  • size 프로퍼티를 사용하면 Set 객체의 크기를 알 수 있다.
const mySet = new Set([1, 3]);
console.log(mySet.size); // 2

 

 

profile

✏️기록하는 즐거움

@nor_coding

포스팅이 좋았다면 "좋아요❤️" 또는 "구독👍🏻" 해주세요!