코딜리티 | lesson4 - Counting Elements : PermCheck (python)

cun·2024년 2월 6일
0

Codility

목록 보기
9/12
post-thumbnail

💻lesson4 - PermCheck

1. 문제

 A non-empty array A consisting of N integers is given.

A permutation is a sequence containing each element from 1 to N once, and only once.

For example, array A such that:

    A[0] = 4
    A[1] = 1
    A[2] = 3
    A[3] = 2
is a permutation, but array A such that:

    A[0] = 4
    A[1] = 1
    A[2] = 3
is not a permutation, because value 2 is missing.

The goal is to check whether array A is a permutation.

Write a function:

def solution(A)

that, given an array A, returns 1 if array A is a permutation and 0 if it is not.

For example, given array A such that:

    A[0] = 4
    A[1] = 1
    A[2] = 3
    A[3] = 2
the function should return 1.

Given array A such that:

    A[0] = 4
    A[1] = 1
    A[2] = 3
the function should return 0.

Write an efficient algorithm for the following assumptions:

N is an integer within the range [1..100,000];
each element of array A is an integer within the range [1..1,000,000,000].

2. 문제 접근

3. 첫번째 시도 - python

def solution(A):
    lst = [i for i in range(1, len(A)+1)]
    A.sort()
    if(A==lst):
        return 1
    else:
        return 0

4. 첫번째 결과


5. 마무리

퀵정렬이나 힙정렬 사용해서 해봐도 좋을 것 같다.

profile
꾸준하게!

0개의 댓글