hdu1034(簡單模擬)

2021-07-22 08:52:51 字數 347 閱讀 2609

模擬的水題

題目是說,n個人坐一圈,開始每個人都有偶數個糖果,如果不相等,老師吹一次哨,每個人就把一半的糖果給右邊的人,如果手裡有奇數個糖果,老師會再給乙個補成偶數,直到所有人糖果數相同。題目知,最後一定能達到相同狀態。

多開了乙個陣列,每次全部換完糖果後判斷一次,用了sort從小到大,如果最小的和最大的相等,就是所有人糖果相等了。

交了就完了,也沒再整理,有點。。。

不管怎樣,反正是ac了

#include #include using namespace std;

int num[1005],s[1005];

int main()

for(int i=0;i

hdu1034 簡單模擬

這裡開乙個二維陣列,num 105 2 我也不知道n有多少,隨便開的,那麼這裡num i 0 表示當前 第 i 個人擁有的糖果數,num i 1 表示他上面乙個人分給他的糖果數,具體實現見 注釋 這裡要注意的就是 先給糖果,然後如果有人糖果數為奇數,就加1 然後再判斷是不是相等 上馬 include...

HDU 1034 傳遞糖果 模擬

題意是一群孩子圍成乙個圈,每個人把手中的糖果分一半給右邊的人,若分過之後手中的糖果數是奇數,則由老師提供一顆糖果給他,問這樣傳遞多少圈所有人的糖果數都能相等,最終每人手裡的糖果數是多少。由於題中已經解釋了結果是有限的數,那麼就直接模擬,要注意分的時候是從前面的人往後面傳遞。如下 1 include ...

模擬 簡單模擬處理邊界 HDU 2525

這題做起來有些煩躁,可能是題意沒有理解清楚吧。題意 造出來的士兵第一天沒有攻擊力,但可以取樣,且要消耗一天的生命,共 d 天生命。造乙個士兵需要 k 天,k 1 天時可以有攻擊力,造到 k 天時相當於成活士兵的第一天。剛開始的士兵為第一天的士兵,沒有攻擊力,但可以取樣。總共模擬 x 天。資料較大,採...