본문 바로가기
Algorithm

JAVA / Codility Lesson 3 / PermMissingElem

by with chu 2021. 5. 7.
728x90

코딜리티 코딩테스트 레슨3


 

<문제 요약>

자연수들의 배열 A[1..(N + 1)] 에서 한 개의 자연수가 빠져있다.
없는 수를 반환하는 함수를 작성한다.
ex)  A = { 2, 3, 4, 5 } 에서 4를 반환

 

 

<문제 풀이>

1. 없는 자연수(missingElement)를 1부터 체크하기위해 1로 세팅한다.
2. java.util.Arrays 유틸리티 클래스를 사용해 오름차순 정렬을 먼저 해준다.
3. for문을 돌면서 배열A의 첫번째(i=0)값부터 체크하고 정상이라면 1을 더해 다음으로 넘어간다.
4. A[i] 가 missingElement와 일치하지 않는 값을 반환한다.

import java.util.*;

class Solution {
    public int solution(int[] A) {
        int missingElement = 1; 
        Arrays.sort(A);

        for (int i = 0; i < A.length; i++) {
            if (A[i] == missingElement) {   
                missingElement = A[i]+1;   
            }
        }
        return missingElement;
    }
}
728x90

댓글