题意:寻找面积最大的挡板,面积等于 area=(j-i)*min(a[i],a[j]);
假设当前组成最大面积的是i和j,那么
它具有如下性质:在i的左边没有更高的线,同理j的右边没有更高的线。
那么,从数组的两边开始检索,假设为a[i]和a[j],
如果a[i]<a[j],
i++;
否则
j--;
原因是在当前的情况下,移动较高的线肯定会让面积更小,所以只能移动较矮的线。
本文共 246 字,大约阅读时间需要 1 分钟。
题意:寻找面积最大的挡板,面积等于 area=(j-i)*min(a[i],a[j]);
假设当前组成最大面积的是i和j,那么
它具有如下性质:在i的左边没有更高的线,同理j的右边没有更高的线。
那么,从数组的两边开始检索,假设为a[i]和a[j],
如果a[i]<a[j],
i++;
否则
j--;
原因是在当前的情况下,移动较高的线肯定会让面积更小,所以只能移动较矮的线。
转载于:https://www.cnblogs.com/ZhangYushuang/p/4789905.html