Slide a fixed-length window
Maintain a sum by removing one contribution and adding one contribution.
Understand the idea
For a window of length k, calculate its first sum once. To move right, subtract the departing value and add the arriving value. The maintained sum must describe exactly the current window, not every element seen so far.
Trace a small example
With [3, −1, 4, 2] and k = 2, sums are 2, 3, and 6. The second sum is 2 − 3 + 4 = 3. Negative values are fine because the window length is fixed: there is no monotonic-sum argument to break.
Conditions and cost
Require 1 ≤ k ≤ n or define what an invalid window means. O(n) time and O(1) auxiliary state suffice when the array is stored. Initialize a maximum from a real window, not zero, when all sums may be negative.
Prefix sum explorer
Query [l, r] is zero-based and inclusive. P[k] stores the total of the first k values; P[0] is zero.
Input array a
Prefix array P
Preprocess once in O(n). Each range sum then takes O(1).
Guided simulation · Change the inputs to test your understanding.
For maximum length-k sum, which input exposes initializing the answer to zero?
Turn the idea into code
Find the maximum length-2 sum in [−5, −2, −8, −1].
Give me a hint
List the three valid window sums.
Show the explained solution
The sums are −7, −10, and −9. The maximum is −7, not zero.
Your notes
Mark complete when you can explain it yourself.