/*
檔名稱:專案5--猴子選大王.cpp
作 者:魏樂天
完成日期:2023年11月2日
版 本 號: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<
執行結果:
知識點總結:
約瑟夫問題的揭發。
學習心得:
在學習c++的時候曾經接觸過這種問題,記得當時不太會,現在細細品味還是慢慢的懂了
第4周實踐專案5 猴子選大王
問題及 檔名稱 專案5 猴子選大王.cpp 作 者 劉強 完成日期 2015年9月25日 版 本 號 v1.0 問題描述 一群猴子,編號是1,2,3 m,這群猴子 m個 按照1 m的順序圍坐一圈。從第1只開始數,每數到第n個,該猴子就要離開此圈,這樣依次下來,直到 圈中只剩下最後乙隻猴子,則該猴子為...
第4周實踐專案5 猴子選大王
檔名稱 專案5 猴子選大王.cpp 作 者 孫翰文 完成日期 2015年10月12日 版 本 號 v1.0 問題描述 一群猴子,編號是1,2,3 m,這群猴子 m個 按照1 m的順序圍坐一圈。從第1只開始數,每數到第n個,該猴子就要離開此圈,這樣依次下來,直到 圈中只剩下最後乙隻猴子,則該猴子為大王...
第4周專案5 猴子選大王
問題及 檔名稱 專案5 猴子選大王.cpp 作 者 王聰 完成日期 2015年10月5日 版 本 號 v1.0 問題描述 一群猴子,編號是1,2,3 m,這群猴子 m個 按照1 m的順序圍坐一圈。從第1只開始數,每數到第n個,該猴子就要離開此圈,這樣依次下來,直到 圈中只剩下最後乙隻猴子,則該猴子為...