2022/05/02 폰켓몬
2022. 5. 2. 22:30ㆍETC/알고리즘
https://programmers.co.kr/learn/courses/30/lessons/1845
코딩테스트 연습 - 폰켓몬
당신은 폰켓몬을 잡기 위한 오랜 여행 끝에, 홍 박사님의 연구실에 도착했습니다. 홍 박사님은 당신에게 자신의 연구실에 있는 총 N 마리의 폰켓몬 중에서 N/2마리를 가져가도 좋다고 했습니다.
programmers.co.kr
풀이
function solution(nums) {
let maxPick = nums.length/2;
let pickArr = [...new Set(nums)];
return Math.min(maxPick, pickArr.length);
}
성능
테스트 1 〉 통과 (0.04ms, 30.1MB)
테스트 2 〉 통과 (0.04ms, 30.3MB)
테스트 3 〉 통과 (0.10ms, 30MB)
테스트 4 〉 통과 (0.04ms, 29.9MB)
테스트 5 〉 통과 (0.04ms, 29.9MB)
테스트 6 〉 통과 (0.11ms, 30MB)
테스트 7 〉 통과 (0.06ms, 30.2MB)
테스트 8 〉 통과 (0.11ms, 30.3MB)
테스트 9 〉 통과 (0.05ms, 29.9MB)
테스트 10 〉 통과 (0.05ms, 30.3MB)
테스트 11 〉 통과 (0.05ms, 30MB)
테스트 12 〉 통과 (0.11ms, 30.2MB)
테스트 13 〉 통과 (0.09ms, 30MB)
테스트 14 〉 통과 (0.11ms, 30.4MB)
테스트 15 〉 통과 (0.06ms, 30.1MB)
테스트 16 〉 통과 (0.55ms, 30.4MB)
테스트 17 〉 통과 (0.53ms, 30.2MB)
테스트 18 〉 통과 (0.36ms, 29.9MB)
테스트 19 〉 통과 (0.30ms, 30.1MB)
테스트 20 〉 통과 (0.26ms, 30MB)
참고
- Set : set은 중복되는 요소를 없앰. set의 경우 size를 통해 길이를 알 수 있다.
var myArray = ['value1', 'value2', 'value3'];
// Array를 Set으로 변환하기 위해서는 정규 Set 생성자 사용
var mySet = new Set(myArray);
mySet.has('value1'); // true 반환
// set을 Array로 변환하기 위해 전개 연산자 사용함.
console.log([...mySet]); // myArray와 정확히 같은 배열을 보여줌
https://developer.mozilla.org/ko/docs/Web/JavaScript/Reference/Global_Objects/Set
Set - JavaScript | MDN
Set 객체는 자료형에 관계 없이 원시 값과 객체 참조 모두 유일한 값을 저장할 수 있습니다.
developer.mozilla.org
'ETC > 알고리즘' 카테고리의 다른 글
| 2022/05/04 숫자 문자열과 영단어 (1) | 2022.05.04 |
|---|---|
| 2022/05/02 신고 결과 받기 (0) | 2022.05.02 |
| 2022/05/02 직사각형 별 찍기 (0) | 2022.05.02 |