目录
- 题目介绍
- 解题方法
题目介绍
解题方法
和209题类似(滑动窗口思想)
思路:如果从l到r这一段的乘积是小于k的,那么[l,r]、[l+1,r]….[r,r]这些子数组都是满足乘积小于k的,一共有r-l+1个
class Solution {public int numSubarrayProductLessThanK(int[] nums, int k) {int left = 0, sum = 1 ,res = 0;for(int i = 0; i < nums.length; i++){sum = sum * nums[i];while(sum >= k && left <= i){sum = sum / nums[left++];}res += i - left + 1;}return res;}
}