给你一个整数数组 nums 和一个整数 k ,请你返回子数组内所有元素的乘积严格小于 k 的连续子数组的数目。
注意:
1=<nums[i]<=1000,均为正整数。
class Solution {
public int numSubarrayProductLessThanK(int[] nums, int k) {
if(k<=1) return 0;
int multi=1;
int res=0;
int left=0;
int right=0;
while(right<nums.length){
multi*=nums[right];
while(multi>=k){
multi/=nums[left];
left++;
}
res+=right-left+1;
right++;
}
return res;
}
}