leetcode - Trapping Rain Water
2014-10-26 12:50
253 查看
Given n non-negative integers representing an elevation map where the width of each bar is 1, compute how much water it is able to trap after raining.
For example,
Given
The above elevation map is represented by array [0,1,0,2,1,0,1,3,2,1,2,1]. In this case, 6 units of rain water (blue section) are being trapped. Thanks Marcos for contributing this image!
For example,
Given
[0,1,0,2,1,0,1,3,2,1,2,1], return
6.
The above elevation map is represented by array [0,1,0,2,1,0,1,3,2,1,2,1]. In this case, 6 units of rain water (blue section) are being trapped. Thanks Marcos for contributing this image!
class Solution { public: int trap(int A[], int n) { if(n <=2) return 0; int t = 0; int l = A[0], r=A[n-1]; int bgn = 1, end = n-2; while(bgn <= end){ if(l < r){ t += std::max(l - A[bgn], 0); l = std::max(l, A[bgn]); bgn++; } else{ t += std::max(r - A[end], 0); r = std::max(r, A[end]); end--; } } return t; } };
相关文章推荐
- 【leetcode】Trapping Rain Water
- LeetCode Trapping Rain Water
- LeetCode Trapping Rain Water
- LeetCode-Trapping Rain Water
- LeetCode解题报告—— Trapping Rain Water
- LeetCode 42 Trapping Rain Water
- [Leetcode] trapping rain water 收集雨水
- 【LeetCode with Python】 Trapping Rain Water
- [LeetCode] Trapping Rain Water
- LeetCode-Trapping Rain Water
- leetcode -- Trapping Rain Water
- [leetcode] Trapping Rain Water
- LeetCode---(42)Trapping Rain Water
- leetcode Trapping Rain Water
- leetcode_Trapping Rain Water
- leetCode Trapping Rain Water
- LeetCode042 Trapping Rain Water
- LeetCode —— Trapping Rain Water
- LeetCode(8) - Trapping Rain Water
- Leetcode 42 Trapping Rain Water