題目.
high
其實就是求每個數左邊或者右邊連續小於自己的個數。感覺不是很難啊。
package main
import
"fmt"
func
candy
(ratings [
]int
)int
candies :=
make([
]int
,len
(ratings)
)for i :=
0; i <
len(ratings)
; i++
lesscnt :=
0for i :=
1; i <
len(ratings)
; i++
else}}
lesscnt =
0for i :=
len(ratings)-2
; i >=
0; i--
else}}
fmt.
println
(candies)
total :=
0for
_, v :=
range candies
return total
}func
main()
))}
o(n)
o(n)
執行用時 :
24 ms
, 在所有 go 提交中擊敗了
69.03%
的使用者記憶體消耗 :
6.1 mb
, 在所有 go 提交中擊敗了
71.74%
的使用者
135 分發糖果
老師想給孩子們分發糖果,有 n 個孩子站成了一條直線,老師會根據每個孩子的表現,預先給他們評分。你需要按照以下要求,幫助老師給這些孩子分發糖果 每個孩子至少分配到 1 個糖果。相鄰的孩子中,評分高的孩子必須獲得更多的糖果。那麼這樣下來,老師至少需要準備多少顆糖果呢?示例 1 輸入 1,0,2 輸出 ...
135 分發糖果
一 題目描述 老師想給孩子們分發糖果,有 n 個孩子站成了一條直線,老師會根據每個孩子的表現,預先給他們評分。你需要按照以下要求,幫助老師給這些孩子分發糖果 每個孩子至少分配到 1 個糖果。相鄰的孩子中,評分高的孩子必須獲得更多的糖果。那麼這樣下來,老師至少需要準備多少顆糖果呢?示例 1 輸入 1,...
135 分發糖果
老師想給孩子們分發糖果,有 n 個孩子站成了一條直線,老師會根據每個孩子的表現,預先給他們評分。你需要按照以下要求,幫助老師給這些孩子分發糖果 那麼這樣下來,老師至少需要準備多少顆糖果呢?示例 1 輸入 1,0,2 輸出 5 解釋 你可以分別給這三個孩子分發 2 1 2 顆糖果。示例 2 輸入 1,...