문제

풀이
class Solution {
public int largestUniqueNumber(int[] nums) {
Map<Integer, Integer> map = new HashMap<>();
int answer = -1;
for (int n : nums) {
map.put(n, map.getOrDefault(n, 0) + 1);
}
for (Map.Entry<Integer, Integer> entry : map.entrySet()) {
int key = entry.getKey();
int value = entry.getValue();
if (value == 1) {
answer = Math.max(answer, key);
}
}
return answer;
}
}
- 숫자가 나오는 횟수를 카운팅한 뒤, 카운트가 1인 숫자 중 최대값을 찾으면 된다.
- 카운팅을 위해 HashMap을 사용 (범위 제한이 작은 경우 배열을 사용해도 되긴함)
- 카운트를 한 뒤, map을 돌면서 value가 1인 최대 key 찾기