题目
Leetcode · 乘积小于 K 的子数组
没成功的写法
/**
* @param {number[]} nums
* @param {number} k
* @return {number}
*/
var numSubarrayProductLessThanK = function (nums, k) {
if(k=0) return 0
let arrs = []
for (let i = 0, len = nums.length; i < len; i++) {
if (nums[i] >= k) break //如果当前项已经大于k,直接 return
let sum = nums[i], //记录当前连续数组的乘积
prevItem = [nums[i]]
arrs.push(prevItem)
for (let j = i + 1; j < len; j++) {
sum = sum * nums[j]
if (sum >= k) break
prevItem = [...prevItem, nums[j]]
arrs.push(prevItem)
}
}
return arrs.length
};
提交的报错