알고리즘

[JS] 프로그래머스_폰켓몬

햄❤️ 2021. 7. 25. 20:39
반응형

문제링크

 

코딩테스트 연습 - 폰켓몬

당신은 폰켓몬을 잡기 위한 오랜 여행 끝에, 홍 박사님의 연구실에 도착했습니다. 홍 박사님은 당신에게 자신의 연구실에 있는 총 N 마리의 폰켓몬 중에서 N/2마리를 가져가도 좋다고 했습니다.

programmers.co.kr

 

 


  •    주어진 숫자 배열을 for문으로 검색해서, arr라는 빈 배열에 요소가 있는지 확인 후 없고, arr의 길이가 최대로 나올 수 있는 길이/2 보다 작은지 확인해서, 조건에 만족하면 arr에 push한다.
  • arr에 동일 요소가 이미 있다면, 반복문 조건에 따라 arr 배열에 들어가지 않는다. 
  • 최종적으로 arr 배열의 길이를 구해준다. = 최대 종류의 수 

   

function solution(nums) {
	const arr = [];
	for (let x of nums) {
		if (!arr.includes(x) && arr.length < nums.length / 2) {
			arr.push(x);
		}
	}
	return arr.length;
}

let nums = [3, 3, 3, 2, 2, 2];
console.log(solution(nums));
//2 출력
728x90
반응형