반응형
코드
import java.util.*;
class Solution {
public int solution(int[] nums) {
int answer = 0;
int max = nums.length / 2;
HashMap<Integer, Integer> hm = new HashMap<>();
for(int n : nums) {
hm.put(n, hm.getOrDefault(n, 0) + 1);
}
if(hm.size() > max) {
answer = max;
} else {
answer = hm.size();
}
return answer;
}
}
이제 9-13번째 줄까지는 어떻게 하는지 알겠는데
그 밑에 15-19번째 줄... 까지를 어떻게 계산해야하지 고민하고 있었다....
그래서 다른 분 코드를 참고하기로 했다...
[프로그래머스] 폰켓몬 문제풀이 (Java)
[프로그래머스] 폰켓몬 문제풀이 (Java)
velog.io
HashSet을 사용하셔서 hs.add(nums[i]);
이렇게 쓰신 점이 나랑은 다르다..
그리고 해시맵/해시셋 사이즈가 가져갈 수 있는 폰켓몬 (N / 2) 보다 크면, 가져갈 수 있는 폰켓몬 (N / 2)을 리턴하고,
작거나 같으면, 해시맵/해시셋 사이즈를 리턴하게 하면 되는 것이었다..
이거 이해하는 데만 5분 걸렸넹...😂
반응형
'코테 > 프로그래머스' 카테고리의 다른 글
[프로그래머스/Lv. 2] 위장 (0) | 2023.02.22 |
---|---|
[프로그래머스/Lv. 2] 전화번호 목록 (0) | 2023.02.22 |
[프로그래머스/Lv. 1] 완주하지 못한 선수 (0) | 2023.02.21 |
[프로그래머스/Lv. 2] 가장 큰 수 (0) | 2023.02.21 |
[프로그래머스/Lv. 1] K번째수 (0) | 2023.02.21 |