코딩 테스트/Codility

코딜리티 - PermMissingElem 문제 (자바)

app.codility.com/programmers/lessons/3-time_complexity/

 

3. Time Complexity lesson - Learn to Code - Codility

Count minimal number of jumps from position X to Y.

app.codility.com

정렬 후 값을 인덱스와 인덱스 + 1을 비교한다.

만약 전부 같으면 N+1이 없는 것이므로 N + 1을 리턴한다.

import java.util.Arrays;

// 코딜리티 - PermMissingElem 문제
class PermMissingElem {
    public int solution(int[] A) {
        // write your code in Java SE 8
        Arrays.sort(A);
        return getMissingElem(A);
    }

    public int getMissingElem(int[] A) {
        for (int i = 0; i < A.length; i++) {
            if (A[i] != i + 1) {
                return i + 1;
            }
        }
        return A.length + 1;
    }
}