코딜리티 PermCheck

dosanahnchangho·2020년 8월 20일
0

문제 보기

문제 요약

  • N 개의 정수로 구성된 비어 있지 않은 배열 A 제공
  • 순열(permutation) : 1에서 N 까지의 각 요소를 한 번만 포함
  • 배열 A가 순열(permutation)인지 확인
  • 배열 A가 순열(permutation)이면 1을, 그렇지 않으면 0을 return

문제 해석부터 해매서 문제 난이도에 비해 너무 오래 애먹었다. ㅠ ㅠ

문제 풀이

function solution(A) {
    A.sort((a,b)=>a-b)
    return !A.some((a,i)=>a != i + 1) * 1
}

일단 배열 A 를 오름차순으로 정렬한다. ex) 1,2,3,.....

문제에서 1 부터 N 까지라고 했으니 A[0] 은 1 이어야 한다.

A[1] = 2

A[2] = 3

.....

some 으로 위 조건 맞지 않는 경우를 찾으면 순회를 종료하고 ! 후 boolean 값을 number 로 변경 하기 위해서 1을 곱해준다.

profile
프론트 엔드 개발자

0개의 댓글