2014年4月20日日曜日

Lesson 1: PermMissingElem (Perm Missing Elem)

https://codility.com/programmers/lessons/
Lesson 1 - PermMissingElemの答えがこちらになります。

Expected worst-case complexityが O(1)なので、そこがちょっと難しい。

で、1から(N + 1)までの総和をとって、実際の配列内の要素の総和を引くといいということらしいので、そうすると100%の回答になる。


=================================================================================
Complexity:

expected worst-case time complexity is O(N);
expected worst-case space complexity is O(1), beyond input storage 
(not counting the storage required for input arguments).
=================================================================================













int solution(int A[], int N) 
{
    long sum = ((long)N + 1) * (N + 2) / 2;
    
    int i;

    for (i = 0; i < N; i++){
        sum -= A[i];
    }
    
    return sum;
}

0 件のコメント:

コメントを投稿