LeeCode 11ダブルポインター

タイトル

ポータルリーコード11

解決策

ダブルポインターの考え方は、問題のスケールを小さくすることです。現在の境界の高さが小さいポイントでは、この境界を境界として使用する最適解が更新されているため、削除して間隔を狭めることができます。

class Solution {
public:
    int maxArea(vector<int>& height) {
        int sz = height.size(), s = 0, t = sz - 1, res = 0;
        while(s < t){
            int m = min(height[s], height[t]);
            res = max(res, (t - s) * m);
            if(m == height[s]) ++s;
            else --t;
        }
        return res;
    }
};
元の記事を110件公開 いいね1 訪問者2036

おすすめ

転載: blog.csdn.net/neweryyy/article/details/105596894