Python Min Avg Two Slice
def min_avg_two_slice(a: list[int]) -> int:
idx = 0
min_avg = (a[0] + a[1]) / 2
for i in range(len(a) - 1):
cur = (a[i] + a[i + 1]) / 2
if i + 2 < len(a):
three = (a[i] + a[i + 1] + a[i + 2]) / 3
cur = min(cur, three)
if cur < min_avg:
min_avg = cur
idx = i
return idx
This leans on the key trick for this problem: the minimum average slice is always length 2 or 3.