题目
discussion中的解答:
class Solution {
public:
vector<int> productExceptSelf(vector<int>& nums) {
vector<int> left(nums.size(), 1);
vector<int> right(nums.size(), 1);
vector<int> res(nums.size(), 1);
// 某个数左边所有数字相乘
for (int i = 1; i < nums.size(); i++) {
left[i] = left[i - 1] * nums[i - 1];
res[i] *= left[i];
}
// 某个数右边所有数字相乘
for (int j = nums.size() - 2; j >= 0; j--) {
right[j] = right[j + 1] * nums[j + 1];
res[j] *= right[j];
}
return res;
}
};