function solution(nums) {
//n/2만큼 가져가는데 중복 제거하고 가져가는 경우의 수
let answer = []
answer.push(nums.length/2)
const set = new Set(nums)
answer.push(set.size)
return Math.min(...answer)
}
문제에서 원하는 결과: 중복 제거한 후 포켓몬을 가져가는 경우의 수
먼저, nums의 길이를 2로 나눈 값을 answer에 저장한다. 그리고 nums를 중복 제거한 객체의 길이를 answer에 저장한다.
둘 중 작은 값을 리턴하면 원하는 결과가 나온다.
설명이 어려울 뿐 조금 생각해보면 꽤나 간단하게 풀리는 문제같다. 근데 해시와 관련이 있는지는 잘 모르겠다...
좋은 정보 얻어갑니다, 감사합니다.