1. 程式人生 > >leetcode python 042收集雨水

leetcode python 042收集雨水

pri [] pen 收集雨水 min 給定 range tco pytho

‘‘‘
給定n個非負整數表示每個條的寬度為1的高程圖,計算下雨後能夠捕獲多少水。
例如,
鑒於[0,1,0,2,1,0,1,3,2,1,2,1],返回6。
這個題要先算出盛滿水後的高程圖,減去前者就是雨水。
盛水多高取決於左右最高的兩處低的一方。
‘‘‘
l1=[0,1,0,2,1,0,1,3,2,1,2,1]
w=[]
for i in range(len(l1)):
w.append(min(max(l1[0:i+1]),max(l1[i:]))-l1[i])
print(‘收集雨水:‘,sum(w))

leetcode python 042收集雨水