Multiplication of numbers

There is an array A[N] of N numbers. You have to compose an array Output[N] such that Output[i] will be equal to multiplication of all the elements of A[N] except A[i]. For example Output[0] will be multiplication of A[1] to A[N-1] and Output[1] will be multiplication of A[0] and from A[2] to A[N-1]. Solve it without division operator and in O(n).

1 comment:

h'spec said...

The question is probably incorrect, the simplest solution is to multiply all the numbers of the array in O(n) time, then divide the product with the corresponding array element in the second pass.