2090. K Radius Subarray Averages
2090. K Radius Subarray Averages
這個題目的重點是細心處理邊界問題。
class Solution:
def getAverages(self, nums: List[int], k: int) -> List[int]:
prefix = [nums[0]]
for i in range(1, len(nums)):
prefix.append(prefix[i - 1] + nums[i])
res = []
n = len(prefix)
for i in range(n):
if i - k >= 0 and i + k < n:
tmp = (prefix[i + k] - prefix[i - k] + nums[i - k]) // (2 * k + 1)
res.append(tmp)
else:
res.append(-1)
return res