題目描述
問題描述
有n個小朋友圍坐成一圈。老師給每個小朋友隨機發偶數個糖果,然後進行下面的遊戲:
每個小朋友都把自己的糖果分一半給左手邊的孩子。
一輪分糖後,擁有奇數顆糖的孩子由老師補給1個糖果,從而變成偶數。
反覆進行這個遊戲,直到所有小朋友的糖果數都相同為止。
你的任務是**在已知的初始糖果情形下,老師一共需要補發多少個糖果。
輸入程式首先讀入乙個整數n(2< n< 100),表示小朋友的人數。
接著是一行用空格分開的n個偶數(每個偶數不大於1000,不小於2)
輸出要求程式輸出乙個整數,表示老師需要補發的糖果數。
樣例輸入
32 2 4
樣例輸出
4
#include
using
namespace std;
const
int n=
110;
int a[n]
;int n;
bool
check()
return
true;}
intmain()
int ans=0;
//分發糖果注意了,是先分,不能接受了別人的糖果在除以2
while(1
)int temp=a[1]
;for
(int i=
1;i<=n-
1;i++
) a[n]
+=temp/2;
//第乙個人沒改變之前的值
a[1]
-=temp/2;
for(
int i=
1;i<=n;i++)}
} cout
}
藍橋杯 2023年第五屆真題 分糖果
問題描述 有n個小朋友圍坐成一圈。老師給每個小朋友隨機發偶數個糖果,然後進行下面的遊戲 每個小朋友都把自己的糖果分一半給左手邊的孩子。一輪分糖後,擁有奇數顆糖的孩子由老師補給1個糖果,從而變成偶數。反覆進行這個遊戲,直到所有小朋友的糖果數都相同為止。你的任務是 在已知的初始糖果情形下,老師一共需要補...
藍橋杯 2023年第五屆真題 分糖果
時間限制 1sec 記憶體限制 128mb 提交 5184 解決 2783 題目描述 問題描述 有n個小朋友圍坐成一圈。老師給每個小朋友隨機發偶數個糖果,然後進行下面的遊戲 每個小朋友都把自己的糖果分一半給左手邊的孩子。一輪分糖後,擁有奇數顆糖的孩子由老師補給1個糖果,從而變成偶數。反覆進行這個遊戲...
藍橋杯 2023年第五屆真題 排列序數
如果用a b c d這4個字母組成乙個串,有4 24種,如果把它們排個序,每個串都對應乙個序號 abcd 0 abdc 1 acbd 2 acdb 3 adbc 4 adcb 5 bacd 6 badc 7 bcad 8 bcda 9 bdac 10 bdca 11 cabd 12 cadb 13 ...