Maximum Average Subarray I LeetCode solution in C++

1
// O(N) Time and O(1) Space - SLIDING WINDOW
2

3
class Solution {
4
public:
5
double findMaxAverage(vector<int> &nums, int k) {
6
double ans = INT_MIN;
7

8
int i = 0;
9
int j = 0;
10
int sum = 0;
11

12
while (j < nums.size()) {
13
// calcs
14
sum = sum + nums[j];
15

16
if (j - i + 1 < k) {
17
j++;
18
} else if (j - i + 1 == k) {
19
// ans
20
double nos = k * 1.0;
21
ans = max(ans, sum / nos);
22

23
int v = nums[i];
24
sum = sum - v;
25

26
// SLIDE
27
i++;
28
j++;
29
}
30
}
31

32
return ans;
33
}
34
};

0

WPM •0 •0

100%

ACC •0 •0

0s

TIME •0