博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Trapping Rain Water
阅读量:4074 次
发布时间:2019-05-25

本文共 1432 字,大约阅读时间需要 4 分钟。

Trapping Rain Water

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 [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!

Java代码:

public class Solution {    public int trap(int[] A) {         int answer = 0;    if (A.length <= 2) {        answer = 0;    }    else {        int maxValue = 0;        int maxValueIndex = 0;        for (int i = 0; i < A.length; i++) {            int elem = A[i];            if (elem > maxValue) {                maxValue = elem;                maxValueIndex = i;            }        }        int totalDrops = 0;        int leftMax = 0;        for (int i = 0; i < maxValueIndex; i++) {            int elem = A[i];            if (elem > leftMax) {                leftMax = elem;            }            else {                totalDrops += leftMax - A[i];            }        }        int rightMax = 0;        for (int i = A.length - 1; i > maxValueIndex; i--) {            int elem = A[i];            if (elem > rightMax) {                rightMax = elem;            }            else {                totalDrops += rightMax - A[i];            }        }        answer = totalDrops;    }    return answer;    }}
 

转载地址:http://onuni.baihongyu.com/

你可能感兴趣的文章
Oracle 12C DG 搭建(RAC-RAC/RAC-单机)
查看>>
Truncate 表之恢复
查看>>
Oracle DG failover 后恢复
查看>>
为什么很多程序员都选择跳槽?
查看>>
mongdb介绍
查看>>
Yotta企业云盘助力科技行业创高峰
查看>>
Yotta企业云盘更好地为教育行业服务
查看>>
Yotta企业云盘怎么帮助到能源化工行业
查看>>
企业云盘如何助力商业新发展
查看>>
医疗行业运用企业云盘可以带来什么样的提升
查看>>
媒体广告业如何运用云盘提升效率
查看>>
IOS开发的开源库
查看>>
Jenkins - sonarqube 代码审查
查看>>
Jenkins + Docker + SpringCloud 微服务持续集成(一)
查看>>
Jenkins + Docker + SpringCloud 微服务持续集成 - 单机部署(二)
查看>>
Jenkins + Docker + SpringCloud 微服务持续集成 - 高可用集群部署(三)
查看>>
Linux 粘滞位 suid sgid
查看>>
C#控件集DotNetBar安装及破解
查看>>
Winform皮肤控件IrisSkin4.dll使用
查看>>
Winform多线程
查看>>