// 方法一:连续计算k个值判断是否满足,时间复杂度高classSolution{publicintnumOfSubarrays(int[] arr,int k,int threshold){int count =0;int total = k * threshold;for(int i =0; i < arr.length - k; i++){int sum =0;for(int j = i; j <= i + k; j++){
sum += arr[j];}if(sum >= total)count++;}return count;}}/**
* 方法二:滑动窗口,减少重复元素求和计算
*/classSolution{publicintnumOfSubarrays(int[] arr,int k,int threshold){int count =0;int total = k * threshold;int sum =0;for(int i =0; i < k; i++){
sum += arr[i];}int sub = sum - total;if(sub >=0) count++;for(int i = k; i < arr.length; i++){
sub = sub + arr[i]- arr[i - k];if(sub >=0){
count++;}}return count;}}