Write a function:
def solution (A)

that, given an array A of N integers, returns the smallest positive integer (greater than 0) that does not occur in A. write an efficient algorithm for the following assumptions:
1. N is an integer within the range [1 .. 100,000];
2. each element of array A is an integer within the range [-1,000,000.. 1,000,000].