問題描述
有n個小朋友圍坐成一圈。老師給每個小朋友隨機發偶數個糖果,然後進行下面的遊戲:
每個小朋友都把自己的糖果分一半給左手邊的孩子。
一輪分糖後,擁有奇數顆糖的孩子由老師補給1個糖果,從而變成偶數。
反覆進行這個遊戲,直到所有小朋友的糖果數都相同為止。
你的任務是**在已知的初始糖果情形下,老師一共需要補發多少個糖果。
輸入格式
程式首先讀入乙個整數n (2< n <100),表示小朋友的人數。
接著是一行用空格分開的n個偶數(每個偶數不大於1000,不小於2)
輸出格式
要求程式輸出乙個整數,表示老師需要補發的糖果數。
樣例輸入
3 2 2 4
樣例輸出
4解析:簡單模擬即可,一開始沒注意到最後乙個不能直接同a[0]進行處理,因為前面的移動已經改變了a[0]的初始值,所以要多一步處理。
public
class main
while (true)
}if (j == n)
int x = a[0];
for (int i = 0; i < n-1; i++)
a[n-1] = (a[n-1] + x) / 2;
for (int i = 0; i < n; i++) }}
system.out.println(cnt);
}}
藍橋杯 歷屆試題 分糖果 模擬
歷屆試題 分糖果 時間限制 1.0s 記憶體限制 256.0mb 問題描述 有n個小朋友圍坐成一圈。老師給每個小朋友隨機發偶數個糖果,然後進行下面的遊戲 每個小朋友都把自己的糖果分一半給左手邊的孩子。一輪分糖後,擁有奇數顆糖的孩子由老師補給1個糖果,從而變成偶數。反覆進行這個遊戲,直到所有小朋友的糖...
藍橋杯歷屆試題 分糖果(簡單模擬)
問題描述 有n個小朋友圍坐成一圈。老師給每個小朋友隨機發偶數個糖果,然後進行下面的遊戲 每個小朋友都把自己的糖果分一半給左手邊的孩子。一輪分糖後,擁有奇數顆糖的孩子由老師補給1個糖果,從而變成偶數。反覆進行這個遊戲,直到所有小朋友的糖果數都相同為止。你的任務是 在已知的初始糖果情形下,老師一共需要補...
藍橋杯 歷屆試題 分糖果
歷屆試題 分糖果 時間限制 1.0s 記憶體限制 256.0mb 問題描述 有n個小朋友圍坐成一圈。老師給每個小朋友隨機發偶數個糖果,然後進行下面的遊戲 每個小朋友都把自己的糖果分一半給左手邊的孩子。一輪分糖後,擁有奇數顆糖的孩子由老師補給1個糖果,從而變成偶數。反覆進行這個遊戲,直到所有小朋友的糖...