class Solution:
def pourWater(self, heights: List[int], V: int, K: int) -> List[int]:
n = len(heights)
for i in range(V):
left = best = K #best记录最佳位置
#先向左找
while left-1 >= 0 and heights[left-1] <= heights[left]:
if heights[left-1] < heights[left]:
best = left-1
left -= 1
if best != K: #若找到
heights[best] += 1
else: #若没找到则向右
right = K
while right+1 < n and heights[right+1] <= heights[right]:
if heights[right+1] < heights[right]:
best = right+1
right += 1
heights[best] += 1
return heights