Go•maximum-average-subarray-i/solution.go
package main
func findMaxAverage(nums []int, k int) float64 {
windowSum := 0
for index := 0; index < k; index++ {
windowSum += nums[index]
}
best := windowSum
for index := k; index < len(nums); index++ {
windowSum += nums[index] - nums[index-k]
if windowSum > best {
best = windowSum
}
}
return float64(best) / float64(k)
}
Python•maximum-average-subarray-i/solution.py
class Solution:
def findMaxAverage(self, nums: list[int], k: int) -> float:
window_sum = sum(nums[:k])
best = window_sum
for index in range(k, len(nums)):
window_sum += nums[index] - nums[index - k]
best = max(best, window_sum)
return best / k
TypeScript•maximum-average-subarray-i/solution.ts
function findMaxAverage(nums: number[], k: number): number {
let windowSum = class="syntax-number">0;
for (let index = class="syntax-number">0; index < k; index += class="syntax-number">1) windowSum += nums[index];
let best = windowSum;
for (let index = k; index < nums.length; index += class="syntax-number">1) {
windowSum += nums[index] - nums[index - k];
best = Math.max(best, windowSum);
}
return best / k;
}