티스토리 뷰
풀이 방법
내용을 읽어보면 결국 가장 많이 가져가는 경우는 N/2이고
가장 적게 가져가는 경우는 내가 폰켓몬을 총 잡은 수(중복 제외)이다.
중복을 제외하고 폰켓몬의 종류를 알아내기 위해서 HashSet를 이용했다.
HashSet은 결국 집합이니까 중복된걸 알아서 제거하고
size()메소드를 통해서 알아낼 수 있다. 종류가 N/2보다 많아도 가장 많이 가져가는건 N/2이기 때문에
Math.min함수를 이용한다.
소스 코드(Java)
import java.util.HashSet;
class Solution {
public int solution(int[] nums) {
HashSet<Integer> hash=new HashSet<>();
for(int num:nums)
hash.add(num);
return Math.min(nums.length/2, hash.size());
}
}
'알고리즘 > 프로그래머스(JAVA)' 카테고리의 다른 글
[프로그래머스/알고리즘] 게임 내 최단 거리 (2) | 2019.05.17 |
---|