Strong Root

난이도 ★


문제를 보시려면 여기를 클릭





문제 요약

 총 홀수번 등장하는 숫자가 딱 1종류 있는데 그걸 리턴하면 됩니다 





힌트

 자료구조 문제이며, 등장 횟수 측정의 부하를 줄이는 것이 핵심입니다 (Hash 사용을 추천)





이하는 코드입니다.


1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
public int solution(int[] A) {
    Map<Integer, Integer> countMap = new HashMap<>();
 
    for (int i = 0; i < A.length; i++) {
        increaseCount(countMap, A[i]);
    }
 
    for (Integer key : countMap.keySet()) {
        if (countMap.get(key) % 2 != 0) {
            return key;
        }
    }
 
    return -1;
}
 
private void increaseCount(Map<Integer, Integer> countMap, int targetNum) {
    Integer target = countMap.get(targetNum);
 
    if (target == null) {
        countMap.put(targetNum, 1);
    }
    else {
        countMap.put(targetNum, target + 1);
    }
}
cs