vector<int> productExceptSelf(vector<int> &nums)
{
vector<int> res(nums.size(), 1);
int n = nums.size();
// 先求解不包括这个数的前缀做法
for (int i = 1; i < nums.size(); i++)
{
res[i] = res[i - 1] * nums[i - 1];
}
// 这个数的后缀做法
int s = 1;
for (int i = n - 1; i >= 0; i--)
{
res[i] = res[i] * s;
s = s * nums[i];
}
return res;
}