K Radius Subarray Averages

You are given a 0-indexed array nums of n integers, and an integer k.

The k-radius average for a subarray of nums centered at some index i with the radius k is the average of all elements in nums between the indices i - k and i + k (inclusive). If there are less than k elements before or after the index i, then the k-radius average is -1.

Build and return an array avgs of length n where avgs[i] is the k-radius average for the subarray centered at index i.

The average of x elements is the sum of the x elements divided by x, using integer division. The integer division truncates toward zero, which means losing its fractional part.

  • For example, the average of four elements 2, 3, 1, and 5 is (2 + 3 + 1 + 5) / 4 = 11 / 4 = 2.75, which truncates to 2.
Example 1
Inputnums = [7,4,3,9,1,8,5,2,6], k = 3
Output[-1,-1,-1,5,4,4,-1,-1,-1]
Indices 0, 1, and 2 have fewer than k elements before them, indices 6, 7, and 8 have fewer than k elements after them, and the centered radius-3 subarrays at indices 3, 4, and 5 have integer averages 5, 4, and 4.
Example 2
Inputnums = [100000], k = 0
Output[100000]
With radius 0, the subarray centered at index 0 contains only 100000, so its average is 100000.

Constraints

  • n == nums.length
  • 1 <= n <= 10^5
  • 0 <= nums[i], k <= 10^5

Asked at 4 companies

</>

Your Solution

(Ctrl/Cmd + Enter)

Switching Language

Loading template...

Loading...

Sign in to save your progress

AI code evaluation

Get a correctness verdict, missed edge cases, and complexity analysis of your solution.

Sign in to evaluate