タイトル
所与のn非負整数A1、A2、...、点(I、AI)各座標の数を表します。垂直座標内の動画n行、私は2つのエンドポイントは、(i、AI)及び(I、0)は垂直線です。x軸の構成は、水を収容できるように一緒に容器を有する2本のラインを見つけます。
問題の解決策
ダブルポインタ、シフト内側短辺の各々(なぜなら今高い面積=低い高さ、長さと最長であり、この場合には最大面積を短く境界なるように)、および最大面積を維持します。
コード
class Solution {
public int maxArea(int[] height) {
if(height==null||height.length<2){
return 0;
}
int maxArea=0;
int l=0;
int r=height.length-1;
while(l<r){
int area=Math.min(height[l],height[r])*(r-l);
maxArea=area>maxArea?area:maxArea;
if(height[l]<height[r]){
++l;
}
else{
--r;
}
}
return maxArea;
}
}