티스토리 뷰

배열 A에 1 ~ N까지의 숫자가 들어가있는데, 이 숫자들이 1부터 N까지 이루는 순열인지 아닌지를 판단하는 문제.

중간에 빠진 값이 있거나 하는 경우 0을 반환하고, 모든 숫자가 포함된 순열인 경우 1을 반환하면 되는 문제.

class Solution {
    public int solution(int[] A) {
    	// 소팅하고
        Arrays.sort(A);
        // 순차적으로 빠진 값이 있는지 체크
        for (int i = 0; i < A.length; i++) {
        	// 빠진 값이 있으면 0을 반환
            if (A[i] != (i + 1)) {
                return 0;
            }
        }
        // 없으면 1 반환
        return 1;
    }
}

A를 오름차순으로 정렬하고 처음부터 돌면서 각 A의 값이 index+1와 같은지 아닌지 비교 후 아닌 경우 그 값이 빠진 것이므로 0을 반환하고 다 확인 후에 없는 경우 1을 반환하도록 구현함. 

댓글
공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
링크
«   2024/09   »
1 2 3 4 5 6 7
8 9 10 11 12 13 14
15 16 17 18 19 20 21
22 23 24 25 26 27 28
29 30
글 보관함