> Uploading knowledge... _
[░░░░░░░░░░░░░░░░░░░░░░░░] 0%
blog logo
> CHICIO CODING_Pixels. Code. Unplugged.

Maximum Average Subarray I

Leetcode Problem 643: Maximum Average Subarray I

Problem Summary

Given an integer array nums and an integer k, find the contiguous subarray of length exactly k with the maximum average value and return that average. Answers within 10^-5 of the true value are accepted.

Constraints:

  • The array has between 1 and 100,000 elements.
  • Each element is an integer in the range [-10,000, 10,000].
  • k is between 1 and the array length.

Techniques

  • Array
  • Sliding Window

Solution

function findMaxAverage(nums: number[], k: number): number {
    let sum = 0

    for (let i = 0; i < k; i++) {
        sum = sum + nums[i]
    }

    let maxSum = sum

    for (let i = k; i < nums.length; i++) {
        sum = sum - nums[i - k] + nums[i]
        maxSum = Math.max(sum, maxSum)
    }

    return maxSum / k
};

console.log(findMaxAverage([1,12,-5,-6,50,3], 4))