티스토리 뷰
( https://app.codility.com/programmers/lessons/3-time_complexity/perm_missing_elem/ )
Find the missing element in a given permutation.
내풀이
- 일반적인 테스트는 통과했지만,
- 세부적인 테스트에서 에러가 많이 발생.
- 앞으로 문제 풀 때는, 0이나 single number처리에 주의해야 한다.
public static int solution(int[] A) {
int answer = 0;
Arrays.sort(A);
for (int i = 0; i < A.length; i++){
if (A[i] != i + 1){
answer = i + 1;
}
}
return answer;
}
베스트 코드
- 숫자의 총 합과, 배열에 담겨있는 값의 합을 뺀 후 missing number를 찾는 방법.
public static int solution(int[] data) {
long N = data.length + 1;
long total = (N * (N + 1)) / 2;
long sum = 0;
for(int i : data) {
sum += i;
}
return (int)(total - sum);
}
'Algorithm > Codility' 카테고리의 다른 글
Codility -6 TapeEquilibrium(Java) (0) | 2020.03.05 |
---|---|
Codility -4 FrogJmp (0) | 2020.03.04 |
Codility -3 OddOccurrencesInArray(Java) (0) | 2020.03.04 |
Codility -2 CyclicRotation(Java) (0) | 2020.03.04 |
Codility -1 Binary gap(Java) (0) | 2020.03.03 |
댓글
최근에 올라온 글
최근에 달린 댓글
TAG
- 생활코딩리눅스
- 20200504
- 20200502
- 20200317
- 20200503
- 20200423
- 20200413
- 20200425
- 20200512
- likelion
- 20200804
- 20200417
- 20200424
- 20200428
- 20201204
- 20200421
- 백준
- chapter7
- 20200429
- 20200406
- chapter8
- 20200415
- 20200330
- 20200427
- 20200510
- 20200403
- 20200624
- 20200420
- 20200622
- 20200319
- Total
- Today
- Yesterday