第四周 猴子選大王

2021-07-05 14:36:21 字數 1045 閱讀 1829

/*       

*檔名稱:專案5--猴子選大王.cpp

*作 者:紀冬雪

*完成日期:2023年10月5日

*版 本 號:v1.0

*問題描述:一群猴子,編號是1,2,3 …m,這群猴子(m個)按照1-m的順序圍坐一圈。

從第1只開始數,每數到第n個,該猴子就要離開此圈,這樣依次下來,直到

圈中只剩下最後乙隻猴子,則該猴子為大王。輸入m和n,輸出為大王的猴子是幾號。

*輸入描述:m個猴子和要出去的位數n。

*程式輸出:king是誰。

*/

#include using namespace std;

struct monkey

;int main()

else

p2->next=head; //最後乙隻再指向第一只,成了乙個圓圈

//下面要開始數了

p1=head;

for(i=1; inext; //圍成圈的,可能再開始從第一隻數,如果還未被淘汰的話

//找到了,

p2=p1->next; //p2將被刪除

//cout

p1=p2->next; //下一輪數數的新起點

delete p2; //將不在鍊錶中的結點放棄掉

}king=p1->num;

delete p1;

}cout<

return 0;

執行結果:

總結:
通過鍊錶的方法解決,這個問題是計算機學習的經典問題,在上學期的學習中也曾經學習過,但沒怎麼弄明白,現在通過注釋對這個問題有了剛深入地理解。鍛鍊了思維能力。

第四周 猴子選大王

專案 猴子選大王 一群猴子,編號是1,2,3 m,這群猴子 m個 按照1 m的順序圍坐一圈。從第1只開始數,每數到第n個,該猴子就要離開此圈,這樣依次下來,直到圈中只剩下最後乙隻猴子,則該猴子為大王。輸入m和n,輸出為大王的猴子是幾號。include using namespace std stru...

第四周 猴子選大王

煙台大學計算機與控制工程學院 作 者 郝環宇 完成日期 9.23 問題描述 一群猴子,編號是1,2,3 m,這群猴子 m個 按照1 m的順序圍坐一圈。從第1只開始數,每數到第n個,該猴子就要離開此圈,這樣依次下來,直到 圈中只剩下最後乙隻猴子,則該猴子為大王。輸入m和n,輸出為大王的猴子是幾號。輸入...

第四周 猴子選大王

問題及 共有m只猴子,編號從1到m,從一開始數,第n只猴子離開。到最後剩下的乙隻為大王。求最後乙隻猴子的編號。include using namespace std struct monkey int main else p2 next head 最後乙隻再指向第一只,成了乙個圓圈 下面要開始數了 ...