본문 바로가기

코딩 테스트/Codility

Codility PermCheck JavaScript 풀이

https://app.codility.com/programmers/lessons/4-counting_elements/perm_check/

 

PermCheck coding task - Learn to Code - Codility

Check whether array A is a permutation.

app.codility.com

내가 처음에 제출한 코드는 아래와 같다.

function solution(A) {
    // write your code in JavaScript (Node.js 8.9.4)
    A.sort((a, b) => (a - b));
    
    var bool = A.some((e, i) => e !== i + 1)
    
    return (bool) ? 0 : 1;
}

배열을 오름차순으로 정렬하고 난 뒤,

Array.prototype.some()을 사용하여 element와 index + 1이 일치하지 않으면 true를 반환하고 반복문을 끝낸다.

정확성은 괜찮을 거 같았고, 성능 상의 문제가 있을 줄 알았는데 100 스코어를 기록했다.