GEEK程式設計練習 發糖果問題

2022-04-08 02:59:05 字數 467 閱讀 7451

假設n個小孩站成一排,每個小孩被分配了乙個整數號碼。要按照如下的要求給孩子們發糖。

1、每個小孩至少有一顆糖果

2、號碼大的孩子比相鄰的孩子分到的糖果要多

求最少要發出幾顆糖果

輸入0 1 3 1 4輸出

9可以前後迴圈兩遍,第一遍從前往後,把相鄰的兩個小孩中,前面號碼比後面號碼大的多發糖;第二遍從後往前,同樣把相鄰孩子中,後面號碼比前面號碼大的多發糖;最後加和得到結果。

#include

#include

#include

using namespace std;

int main()

for (int i = n - 2, inc = 1; i >= 0; i--)

cout << accumulate(increment.begin(), increment.end(), n);

return 0;

}

發糖果問題

題目描述 老師想給孩子們分發糖果,有 n 個孩子站成了一條直線,老師會根據每個孩子的表現,預先給他們評分。你需要按照以下要求,幫助老師給這些孩子分發糖果 每個孩子至少分配到 1 個糖果。相鄰的孩子中,評分高的孩子必須獲得更多的糖果。那麼這樣下來,老師至少需要準備多少顆糖果呢?示例 1 輸入 1,0,...

發糖果問題 二分 貪心

注 與cf上的sweets for everyone 不一樣 幾個關鍵點 1.剛開始的位置是0。2.在時間充裕的前提下,如果手上的糖不夠,可以路過h不發糖,去s買了回來再發。3.但是每個s只能買一次糖。4.如果時間t內不能給所有鄰居發完糖果,則輸出 1。5.為了剛開始帶最少的糖果,每經過乙個s一定買...

練習題9 糖果問題

原問題 擁有最多糖果的孩子 給你乙個陣列 candies 和乙個整數 extracandies 其中 candies i 代表第 i 個孩子擁有的糖果數目。對每乙個孩子,檢查是否存在一種方案,將額外的 extracandies 個糖果分配給孩子們之後,此孩子有 最多 的糖果。注意,允許有多個孩子同時...