傳送門
問題 1431: [藍橋杯][歷屆試題]分糖果
時間限制: 1sec 記憶體限制: 128mb 提交: 290 解決: 162
題目描述
問題描述
有n個小朋友圍坐成一圈。老師給每個小朋友隨機發偶數個糖果,然後進行下面的遊戲:
每個小朋友都把自己的糖果分一半給左手邊的孩子。
一輪分糖後,擁有奇數顆糖的孩子由老師補給1個糖果,從而變成偶數。
反覆進行這個遊戲,直到所有小朋友的糖果數都相同為止。
你的任務是**在已知的初始糖果情形下,老師一共需要補發多少個糖果。
輸入 程式首先讀入乙個整數n(2< n< 100),表示小朋友的人數。
接著是一行用空格分開的n個偶數(每個偶數不大於1000,不小於2)
輸出 要求程式輸出乙個整數,表示老師需要補發的糖果數。
樣例輸入
3 2 2 4
樣例輸出
4其實 還算比較好實現的
既然是 乙個環 那麼就用 永迴圈一直跑 ,跑到出口break就可以了
但需要注意的是 應該在一輪資料都處理過 之後 單獨處理 是否需要給糖果(+1操作), 和下次需要向左給的個數
#include
#include
#include
using
namespace
std;
#define n 10001
int main()
int flag=0;
while (1)
else
}for (int i=0; iif (a[i]%2==1)
b[i] = a[i]/2;
}for (int i=0; iint flag1=0;
for (int j=0; j1; j++)
}if (flag1==0)
}if (flag==1)
break;
}printf ("%d\n",sum);
return
0;}
藍橋杯試題 歷屆試題 分糖果
問題描述 有n個小朋友圍坐成一圈。老師給每個小朋友隨機發偶數個糖果,然後進行下面的遊戲 每個小朋友都把自己的糖果分一半給左手邊的孩子。一輪分糖後,擁有奇數顆糖的孩子由老師補給1個糖果,從而變成偶數。反覆進行這個遊戲,直到所有小朋友的糖果數都相同為止。你的任務是 在已知的初始糖果情形下,老師一共需要補...
藍橋杯 歷屆試題 分糖果
歷屆試題 分糖果 時間限制 1.0s 記憶體限制 256.0mb 問題描述 有n個小朋友圍坐成一圈。老師給每個小朋友隨機發偶數個糖果,然後進行下面的遊戲 每個小朋友都把自己的糖果分一半給左手邊的孩子。一輪分糖後,擁有奇數顆糖的孩子由老師補給1個糖果,從而變成偶數。反覆進行這個遊戲,直到所有小朋友的糖...
藍橋杯 歷屆試題 分糖果
歷屆試題 分糖果 時間限制 1.0s 記憶體限制 256.0mb 問題描述 有n個小朋友圍坐成一圈。老師給每個小朋友隨機發偶數個糖果,然後進行下面的遊戲 每個小朋友都把自己的糖果分一半給左手邊的孩子。一輪分糖後,擁有奇數顆糖的孩子由老師補給1個糖果,從而變成偶數。反覆進行這個遊戲,直到所有小朋友的糖...