题目:给定一个数组,代表木板的高度。选两个木板,求两个木板的最大盛水量。
def max_area(arrys): l,r = 0,len(arrys)-1 res = 0 while l<r: contain = min(arrys[l],arrys[r])*(r-l) if contain>res: res = contain if arrys[l]<arrys[r]: l+=1 else: r-=1 return res
注:使用前后两个指针向中间移动的策略,获取最大的蓄水量。指针移动策略为短的一侧木板移动。