当前位置: 首页 > news >正文

网站建设维护公司电商主页设计

网站建设维护公司,电商主页设计,临安区规划建设局网站,做的网站怎么把技术支持去掉题目 给定 n 个非负整数表示每个宽度为 1 的柱子的高度图,计算按此排列的柱子,下雨之后能接多少雨水。 示例 1: 输入:height [0,1,0,2,1,0,1,3,2,1,2,1] 输出:6 解释:由数组 [0,1,0,2,1,0,1,3,2,1,2,1] 表…

题目

给定 n 个非负整数表示每个宽度为 1 的柱子的高度图,计算按此排列的柱子,下雨之后能接多少雨水。
示例 1:
输入:height = [0,1,0,2,1,0,1,3,2,1,2,1]
输出:6
解释:由数组 [0,1,0,2,1,0,1,3,2,1,2,1] 表示的高度图,在这种情况下,可以接 6 个单位的雨水
示例 2:
输入:height = [4,2,0,3,2,5]
输出:9

答案

这个问题可以通过动态规划来解决。我们可以定义一个dp数组,dp[i]表示从第0个柱子到第i个柱子所能接到的最大雨水量。对于每个柱子,如果它比前一个柱子高,那么它上面的雨水量就是它自身的高度,否则就是0。因此,我们可以得到状态转移方程:

dp[i] = max(dp[i-1], height[i])

其中dp[i-1]表示不接第i个柱子上的雨水量,height[i]表示接第i个柱子上的雨水量。最后,dp数组中的最大值就是所能接到的最大雨水量。

以下是Python代码实现:

def trap(height):if not height:return 0n = len(height)dp = [0] * ndp[0] = height[0]left, right = 0, 0ans = 0while right < n:# 从左往右扫描while right < n and dp[right] < dp[left]:dp[right] += height[right]right += 1# 如果dp[left] < dp[right],则更新left为right的左边一个位置if dp[left] < dp[right]:left = right - 1# 更新最大雨水量ans = max(ans, dp[right])return ans

在这个代码中,我们使用了一个dp数组来存储每个位置所能接到的最大雨水量。left和right分别表示扫描的左右边界,ans表示目前为止所能接到的最大雨水量。在每个位置,如果dp[left] < dp[right],则说明我们可以将雨水接到右边的柱子上,因此需要更新left为right的左边一个位置。最后,返回ans即可。

http://www.yayakq.cn/news/731871/

相关文章:

  • 郑州网站建设维护著名的网站制作公司
  • 做相册的网站dw广州seo诊断
  • 开发手机端网站模板下载不了商务网站策划方案
  • 网站怎么样排名旅游网站建设的方法
  • 企业门户网站设计建设与维护wordpress+苏醒主题
  • 北京网站备案拍照的地点网站优化是怎么做的
  • 网站建设运营合同范本ps2017做网站
  • 主题公园旅游景区网站建设外贸订单源码
  • 网站 点击量南通六建网站
  • 开源企业网站建设系统企业彩页设计模板
  • 上海礼品定制网站北京商场客流恢复六成
  • 让自己的网站收录wordpress卡片圆角
  • 网站的制作公司旅游类网站开发设计报告
  • 在国外做盗版电影网站吗上海做网站的小公司
  • 爱看视频的网站wordpress搭建教育网站
  • 湖南网络推广服务深圳网站关键词优化推广
  • 扬州建设网站哪家公司官网好看
  • 制作网页网站哪个好用wordpress如何安装插件
  • 正规品牌网站设计图片网页翻译在线翻译
  • 为违法网站做推广进去要几年农业综合管理网站建设
  • 新网站建设教程html网页导航栏模板
  • 自己做的网站能备案怎么自己开发微信小程序
  • 论述站点的几种推广方式wordpress 死链检测
  • 游戏网站建设表格企业网站制作费做分录
  • 网站建设策划书总结google 网站收录
  • 建设网站站点过程中国家备案查询系统
  • 做平面什么网站的素材不侵权批量制作图片的软件
  • python3.5 做网站京东内部券网站怎么做
  • 主机开通成功网站正在建设中百度一下官网首页登录
  • 高校招生网站模板游戏网站建设论文