Notice
Recent Posts
Recent Comments
Link
250x250
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | 7 |
8 | 9 | 10 | 11 | 12 | 13 | 14 |
15 | 16 | 17 | 18 | 19 | 20 | 21 |
22 | 23 | 24 | 25 | 26 | 27 | 28 |
29 | 30 | 31 |
Tags
- 백준
- computed
- 자료구조
- JavaScript
- math
- 변수
- JavaSceipt
- SasS
- sorting
- hash table
- 코딩테스트
- CSS
- java
- Algorithm
- 알고리즘
- github
- 파이썬
- greedy
- scss
- vue.js
- array
- 컴포넌트
- leetcode
- 자료형
- Python
- 프로그래머스
- HTML
- string
- dynamic programming
- JS
Archives
- Today
- Total
Posis
[프로그래머스][JavaScript] 폰켓몬 본문
[프로그래머스][JavaScript] 폰켓몬
문제 출처: https://programmers.co.kr/learn/courses/30/lessons/1845
[직접 푼 코드]
function solution(nums) {
const arr = new Set(nums);
if (nums.length / 2 > arr.size) {
return arr.size;
} else {
return nums.length / 2;
}
}
[문제 풀이]
1. Set 객체를 활용해서 Input의 중복을 없애줍니다.
입출력 1을 보시면 [3, 1, 2, 3]입니다. 중복을 없애면 총 3마리의 폰켓몬이 나옵니다. 하지만 홍 박사님은 총 N마리 중에 절반만 가져갈 수 있도록 허락했습니다. 총 4마리의 절반은 2마리, 중복을 없애면 3마리가 나옵니다.
2. N/2 > 중복x 마릿수 - true일 경우 최대 고를 수 있는 폰켓몬 수를 반환하고 false일 경우 N/2 수를 반환하면 됩니다.
[정리하며 생각난 점]
글을 정리하면서 조건절을 nums.length / 2 >= arr.size로 변경해도 통과할 수 있다는 것을 알게 되었습니다.
요번 문제는 유난히 설명을 더 못한 거 같네요. 알아보기 쉽게 작성할 수 있도록 정진하겠습니다!!
728x90
'알고리즘' 카테고리의 다른 글
GitHub Algorithm Study (0) | 2021.07.30 |
---|