扬州外贸网站建设,wordpress 古风主题,27WordPress主题,网站黏度文章目录 题目描述题解思路题解代码题解链接 题目描述 题解思路
这题主要有个关键点#xff0c;就是元素能取0#xff0c;然后我们分类讨论元素为0的数量
如果数组中存在至少两个元素为0#xff0c;则每个元素的除自身以外的乘积为0如果数组中仅存在一个0#xff0c;则为… 文章目录 题目描述题解思路题解代码题解链接 题目描述 题解思路
这题主要有个关键点就是元素能取0然后我们分类讨论元素为0的数量
如果数组中存在至少两个元素为0则每个元素的除自身以外的乘积为0如果数组中仅存在一个0则为0的这个元素对应的除自身以外的乘积为数组中所有非0元素的乘积其它元素的除自身以外的乘积为0如果数组中不存在0则每个元素的除自身以外的乘积为所有元素的乘积除以自身元素
题解代码
impl Solution {pub fn product_except_self(nums: Veci32) - Veci32 {let mut sum 1;let mut zero_count 0;for num in nums {if *num ! 0 {sum * num;} else {zero_count 1; }}let mut ans vec![0; nums.len()];if zero_count 1 {return ans;}if zero_count 1 {for i in 0..nums.len() {if nums[i] 0 {ans[i] sum;return ans;}}}for i in 0..nums.len() {ans[i] sum / nums[i];}ans}
}题解链接
https://leetcode.cn/problems/product-of-array-except-self/