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 |
Tags
- 알고리즘
- 코딩테스트
- 백준
- Python
- 프로그래머스
- JavaSceipt
- hash table
- 변수
- computed
- vue.js
- scss
- Algorithm
- 컴포넌트
- sorting
- github
- greedy
- java
- 파이썬
- dynamic programming
- 자료구조
- CSS
- leetcode
- SasS
- 자료형
- JavaScript
- string
- HTML
- math
- array
- 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 |
---|