多多色-多人伦交性欧美在线观看-多人伦精品一区二区三区视频-多色视频-免费黄色视屏网站-免费黄色在线

國內最全IT社區平臺 聯系我們 | 收藏本站
阿里云優惠2
您當前位置:首頁 > php開源 > php教程 > 【LeetCode】11. Container With Most Water

【LeetCode】11. Container With Most Water

來源:程序員人生   發布時間:2017-04-07 11:14:30 閱讀次數:4959次

問題描寫

Given n non-negative integers a1, a2, …, an, where each represents a point at coordinate (i, ai). n vertical lines are drawn such that the two endpoints of line i is at (i, ai) and (i, 0). Find two lines, which together with x-axis forms a container, such that the container contains the most water.

水桶裝水求容積,實際上是求各條線組成的長方形的面積。

問題分析

保存左右兩個指針,每次計算出當前長方形的面積(高是短的那條線,寬是兩個指針的距離),然后與當前最大值進行比較,如果大于當前最大值就替換掉;然后比較兩個指針指向的值,移動值小的指針,即移動決定高的。

可以理解為最開始就把寬設為最大,然后不斷縮小寬,增長高。

代碼

class Solution {
public:
    int maxArea(vector<int>& height) {
        if(height.size()<=1) return 0;
        int left=0;
        int right = height.size()-1;
        int max_area = 0;
        while(left<right) {
            max_area = max(max_area, 
                min(height[left],height[right])*(right-left));
            if(height[left]>=height[right]) {
                right--;
            } else {
                left++;
            }
        }
        return max_area;
    }
};
生活不易,碼農辛苦
如果您覺得本網站對您的學習有所幫助,可以手機掃描二維碼進行捐贈
程序員人生
------分隔線----------------------------
分享到:
------分隔線----------------------------
關閉
程序員人生
主站蜘蛛池模板: 一级毛片a免费播放王色 | 中文字幕乱码中文字幕 | 成人精品一级毛片 | 久久久精品3d动漫一区二区三区 | 精品欧美一区二区三区 | 正在播放国产一区 | 欧美日本一道高清二区三区 | 亚洲国产欧美在线人成 | 免费激情视频网站 | 国产在线高清视频 | 欧美一级欧美三级在线观看 | 琪琪在线影院 | 欧美另类精品xxxx人妖换性 | 天堂在线天堂最新版 | 久久国产一区二区 | 欧美亚洲日本一区二区三区浪人 | 激情小视频 | 日本性色视频 | 欧美精品一区二区三区四区 | h肉在线 | 国产亚洲欧美日韩在线看片 | 欧美一区二区三区在线观看 | 自拍偷拍第| 欧美视讯 | 欧美性xxx久久 | 欧美性色视频 | 成人在线视频网 | 欧美一级毛片免费高清aa | 密桃av| 国产69精品久久久久99不卡 | 国产无限资源在线观看 | 日本三级午夜理伦三级三 | 成人午夜又粗又硬有大 | h视频在线免费观看 | 成年人免费视频网站 | www.日本精品 | 国产亚洲欧美日韩综合综合二区 | 成 人国产在线观看高清不卡 | 亚洲逼 | 国产国产成人人免费影院 | 国产护士资源总站 |