Simple&Natural

Codility lesson3 - PermMissingElem 본문

코딩테스트 풀이/Codility

Codility lesson3 - PermMissingElem

Essense 2022. 4. 27. 22:53
728x90

 

크기가 n인 배열에 1~n+1까지의 서로 다른 숫자가 들어있다.

여기서 빠진 숫자를 찾는 문제이다.

 

set에 1~n+1까지 넣어두고

다시 배열을 돌면서 배열의 원소를 하나씩 set에서 제거해 준 뒤 남는 숫자가 바로 정답이다.

 

import java.util.*;

class Solution {
    public int solution(int[] A) {
        int answer = 0;
        int n = A.length;
        HashSet<Integer> set = new HashSet<>();

        for (int i=1; i<n+2; i++) {
            set.add(i);
        }

        for (int num : A) {
            set.remove(num);
        }

        if (set.size() == 1) {
            answer = (int) set.toArray()[0];
        } else {
            answer = -1;
        }

        return answer;
    }
}

 

 

https://app.codility.com/demo/results/trainingCWF4HB-EEQ/

728x90

'코딩테스트 풀이 > Codility' 카테고리의 다른 글

Codility lesson3 - TapeEquilibrium  (0) 2022.04.28
Codility lesson3 - FrogJmp  (0) 2022.04.20
Codility lesson2 - odd  (0) 2022.04.20
Codility lesson2 - cyclic rotation  (0) 2022.04.18
Codilidy lesson1 - binary gap  (0) 2022.04.17