Codility Java MissingInteger
업데이트:
문제
코드
// you can also use imports, for example:
// import java.util.*;
// you can write to stdout for debugging purposes, e.g.
// System.out.println("this is a debug message");
import java.util.Set;
import java.util.HashSet;
class Solution {
public int solution(int[] A) {
Set<Integer> numSet = new HashSet<>();
for (int num : A) {
if (num > 0) { // Greater than 0.
numSet.add(num);
}
}
for (int idx = 1; idx <= Integer.MAX_VALUE; idx++) {
if (!numSet.contains(idx)) {
return idx;
}
}
return 1;
}
}
설명
- 누락된 숫자를 파악하기 위해 중복을 제거한 Set을 사용하여 numSet을 정의한다.
- 배열 A를 반복하여 양수만 numSet에 추가한다.
- 1부터 1씩 증가하며 numSet에 포함되어있는지 확인하고, 없을 경우 주어진 문제의 결과로 반환한다.
결과
소스
Sample Code는 여기에서 확인 가능합니다.
댓글남기기