令B[i] = l[i] * r[i];
l[i] = l[i - 1] * A[i -1]
r[i] = A[i + 1] * r[i + 1]
import java.util.ArrayList;
public class Solution {
public int[] multiply(int[] A) {
int[] B = new int[A.length];
if(A == null || A.length == 0) {
return B;
}
int[] l = new int[A.length];
int[] r = new int[A.length];
l[0] = 1;
for(int i = 1; i < A.length; i++) {
l[i] = l[i - 1] * A[i - 1];
}
r[A.length - 1] = 1;
for(int j = A.length - 2; j >= 0; j--) {
r[j] = A[j + 1] * r[j + 1];
}
for(int k = 0; k < A.length; k++) {
B[k] = l[k] * r[k];
}
return B;
}
}