【leetcode】42. 接雨水

给定 n 个非负整数表示每个宽度为 1 的柱子的高度图,计算按此排列的柱子,下雨之后能接多少雨水。

【leetcode】42. 接雨水_第1张图片

分析:

和leetcode11盛水最多的容器思路类似。使用贪心。

 

 

别人:

class Solution {
public:
    int trap(vector& height) {
        int l = 0, r = height.size() - 1, level = 0, res = 0;
        while (l < r) {
            int lower = height[(height[l] < height[r]) ? l++ : r--];
            level = max(level, lower);
            res += level - lower;
        }
        return res;
    }
};

参考:

LintCode-接雨水

你可能感兴趣的:(leetcode)