题解 | #接雨水问题#

接雨水问题

http://www.nowcoder.com/practice/31c1aed01b394f0b8b7734de0324e00f

class Solution {
public:
    /**
     * max water
     * @param arr int整型vector the array
     * @return long长整型
     */
    long long maxWater(vector<int>& arr) {
        // write code here
        if(arr.size()<=2)
            return 0;
        int p=0, min = 0;
        //int f;
        long long sum = 0;
        int q = arr.size()-1;
        while(p<q){
            while((arr[p]<=arr[p+1])&& (p < arr.size()-2) )
                p++;
            while((arr[q]<=arr[q-1]) && (q>2))
                q--;
            if(p>=q)
                return sum;
            min = arr[p]>arr[q] ? arr[q]:arr[p];
            while((q>=p) && (arr[q] <= min))
            {
                sum += min -arr[q];
                q--;
            }
            min = arr[p]>arr[q] ? arr[q]:arr[p];
            while((p<=q) && (arr[p] <= min))
            {
                sum += min - arr[p];
                p++;
            }
        }
        return sum;
    }
};
全部评论

相关推荐

不愿透露姓名的神秘牛友
07-02 17:28
25届每天都在焦虑找工作的事情0offer情绪一直很低落硬撑着面了一个岗位岗位有应酬的成分面试的时候hr给我出各种场景题问的问题比较犀利&nbsp;有点压力面的感觉感觉有点回答不上来本来就压抑的情绪瞬间爆发了呢一瞬间特别想哭觉得自己特别没用没绷住掉眼泪了事后想想觉得自己挺有病的&nbsp;真的破大防了
喜欢唱跳rap小刺猬...:我觉得没关系吧,之前有一次面试leader给我压力面,我顶住了压力,结果入职的时候发现组里氛围很差,果断跑路。其实从面试就能大概看出组的情况,面试体验好的组倒是不一定好,但是面试体验不好的组。。。就很难说
点赞 评论 收藏
分享
不愿透露姓名的神秘牛友
07-03 17:30
点赞 评论 收藏
分享
06-07 12:20
新余学院 Java
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务