题目链接:713. 乘积小于 K 的子数组
双指针,用滑动窗口计算。
class Solution:
def numSubarrayProductLessThanK(self, nums: List[int], k: int) -> int:
ans, prod, i = 0, 1, 0
for j, num in enumerate(nums):
prod *= num
while i <= j and prod >= k:
prod //= nums[i]
i += 1
ans += j - i + 1
return ans