html的网站案例,怎么在百度上做推广,有什么专业做心理的网站,淘宝的关键词排名怎么查牛客网: BM94
题目: 把数组看成柱子高度图#xff0c;计算最多能接多少雨水
思路: 初始化左右双指针left, right 0, n-1, 初始化高度maxL, maxR#xff0c;比较maxL与maxR#xff0c;较小的往对面移动#xff0c;更新maxL或maxR, 同时统计柱子高度差即为可接雨水数…牛客网: BM94
题目: 把数组看成柱子高度图计算最多能接多少雨水
思路: 初始化左右双指针left, right 0, n-1, 初始化高度maxL, maxR比较maxL与maxR较小的往对面移动更新maxL或maxR, 同时统计柱子高度差即为可接雨水数循环至不再满足left right停止
代码:
// gopackage main
// import fmt/*** 代码中的类名、方法名、参数名已经指定请勿修改直接返回方法规定的值即可** max water* param arr int整型一维数组 the array* return long长整型
*/
func max(x, y int) int {if x y {return x} else {return y}
}
func maxWater( arr []int ) int64 {// write code hereif len(arr) 2 {return 0}res : 0left, right : 0, len(arr) - 1maxL, maxR : arr[left], arr[right]for left right {if arr[left] arr[right] {maxL max(maxL, arr[left])res maxL - arr[left]left} else {maxR max(maxR, arr[right])res maxR - arr[right]right--}}return int64(res)
}