Calculate 7-Day Rolling Average for Energy Consumption
Company: Amazon
Role: Data Scientist
Category: Coding & Algorithms
Difficulty: medium
Interview Round: Onsite
Overview: This question evaluates programming fluency in numerical data processing and algorithmic implementation for computing moving averages and handling edge cases in time-series sequences, and it applies to Data Scientist roles while falling under the Coding & Algorithms category.
Constraints
- 0 <= len(consumption) <= 200000
- 0 <= consumption[i] <= 1e9
- Output list length equals input list length
- Each average is computed over the last up to 7 elements ending at that index
- Round each average to two decimal places
- Time complexity O(n); extra space O(1) aside from output
Hints
- Maintain a running sum of the current window and update it in O(1) per step.
- When the window size exceeds 7, subtract the element that falls out from the left.
- Use round(value, 2) to round each average to two decimal places.