Dec 18, 2008

There is an array A[n], to create another array B[n], every element in B has B[i]=A[0]*A[1]*...*A[n-1]/A[i].

There is an array A[n], to create another array B[n], every element in B has B[i]=A[0]*A[1]*...*A[n-1]/A[i].
Don't use division how to create B[n] in O(n).


b[0] = 1;
for (int i = 1; i < size; i++)
b[i] = b[i-1] * a[i-1];
for (int i = size-2; i > 0; i--)
a[i] = a[i] * a[i+1];
for (int i = 0; i < size-1; i++)
b[i] *= a[i+1];

No comments:

Post a Comment