본문 바로가기
Algorithm

JAVA / Codility Lesson 4 / PermCheck

by with chu 2021. 5. 12.
728x90

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


PermCheck coding task - Learn to Code - Codility

 

PermCheck coding task - Learn to Code - Codility

Check whether array A is a permutation.

app.codility.com

 


<문제 요약>

순열(Permutation)이란 1부터 N까지의 각 자연수를 한 번만 포함하는 시퀀스이다.
자연수들의 배열 A
가 순열이면 1, 아니면 0을 반환하는 함수를 작성한다.
ex)  A = { 4, 1, 3, 2 } 에서 1을 반환
       A = { 4, 1, 3 } 에서 0을 반환

 

 

<문제 풀이>

1. java.util.Arrays 유틸리티 클래스를 사용해 오름차순 정렬을 먼저 해준다.
2. java.util.Arrays 유틸리티 클래스를 사용해 오름차순 정렬을 먼저 해준다.
3. for문을 돌면서 배열A의 첫번째 값이 1이 아니거나 정렬된 자연수 1씩 증가하지 않으면 0을 반환한다.

import java.util.*;

class Solution {
    public int solution(int[] A) {
        Arrays.sort(A);
        
        for (int i=0; i<A.length-1; i++){
          if( A[0]!=1 || A[i+1]!= A[i]+1 ){
              return 0;
          }
        }
        return 1;
    }
}
728x90

댓글