🌞Algorithm/🔥programmers

[programmers] 폰켓몬

뿌야._. 2026. 7. 3. 11:00
문제
https://school.programmers.co.kr/learn/courses/30/lessons/1845
 

프로그래머스

SW개발자를 위한 평가, 교육의 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프

programmers.co.kr

 


< 폰켓몬 >

 

문제 풀이 (Java)

import java.util.*;

class Solution {
	public int solution(int[] nums) {
		int answer = 0;

		HashMap<Integer, Integer> map = new HashMap<>();
		for (int i = 0; i < nums.length; i++) {
			if (map.containsKey(nums[i])) {
				map.replace(nums[i], map.get(nums[i]) + 1);
			} else {
				map.put(nums[i], 1);
			}
		}

		if (nums.length / 2 <= map.size()) {
			answer = nums.length / 2;
		} else {
			answer = map.size();
		}

		return answer;
	}
}

 

HashMap을 사용해서 폰켓몬의 종류와 개수를 구한다. HashMap의 크기가 N/2 이상이라면 최대 N/2 종류를 가질 수 있고, N/2보다 작다면 HashMap의 크기만큼 종류를 가질 수 있다. 



 

출처: 프로그래머스 코딩 테스트 연습, 
https://school.programmers.co.kr/learn/challenges

'🌞Algorithm > 🔥programmers' 카테고리의 다른 글

[programmers] 미로 탈출  (0) 2026.07.01
[programmers] 숫자 변환하기  (0) 2026.06.30
[programmers] 할인 행사  (0) 2026.06.29
[programmers] 롤케이크 자르기  (0) 2026.06.26
[programmers] 숫자 짝꿍  (0) 2026.06.25