//B[i]=A[0]*A[1]*...*A[i-1]*A[i+1]*...*A[n-1]//从左到右算 B[i]=A[0]*A[1]*...*A[i-1]//从右到左算B[i]*=A[i+1]*...*A[n-1]class Solution {public: vector<int> multiply(const vector<int>& A) { int n=A.size(); vector<int> b(n); int ret=1; for(int i=0;i<n;ret*=A[i++]){ b[i]=ret; } ret=1; for(int i=n-1;i>=0;ret*=A[i--]){ b[i]*=ret; } return b; }};
联系客服