第四周專案四 猴子選大王

2021-07-23 03:01:14 字數 834 閱讀 2740

問題及**:

/*    

*煙台大學計算機與控制工程學院     

*作    者:申鵬鵬

*完成日期:2023年9月24日 

*問題描述:一群猴子,編號是1,2,3 …m,這群猴子(m個)按照1-m的順序圍坐一圈。從第1只開始數,每數到第n個,該猴子就要離開此圈,這樣依次下來,直到圈中只剩下最後乙隻猴子,則該猴子為大王。輸入m和n,輸出為大王的猴子是幾號。 

(1)鍊錶解法:可以用乙個迴圈單鏈表來表示這一群猴子。表示結點的結構體中有兩個成員:乙個儲存猴子的編號,乙個為指向下乙個人的指標,編號為m的結點再指向編號為1的結點,以此構成環形的鏈。當數到第n個時,該結點被刪除,繼續數,直到只有乙個結點。  

(2)該問題為電腦科學中的經典問題,很多實際的問題可以抽象到這種模型上來。感興趣的同學請搜尋「約瑟夫問題」。  

*/#include 

using

namespace std;    

struct monkey    

;    

int main()    

else

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

//下面要開始數了  

p1=head;    

for(i=1; i//迴圈m-1次,淘汰m-1只猴子  

king=p1->num;    

delete p1;    

}    

cout

} 執行結果:

第四周 專案四 猴子選大王

計算機控制工程學院 姓名 陳飛 班級 計156 2 問題及 問題描述 一群猴子,編號是1,2,3 m,這群猴子 m個 按照1 m的順序圍坐一圈。從第1只開始數,每數到第n個,該猴子就要離開此圈,這樣依次下來,直到圈中只剩下最後乙隻猴子,則該猴子為大王。輸入m和n,輸出為大王的猴子是幾號。includ...

第四周專案四 猴子選大王

all right reserved.檔名稱 axiao.cpp 完成日期 2017年10月8日 版本號 v1.0 問題描述 猴子選大王 輸入描述 猴子總數m只,要離開的猴子第n只 程式輸出 成為大王的猴子的編號 一群猴子,編號是1,2,3 m,這群猴子 m個 按照1 m的順序圍坐一圈。從第1只開始...

第四周 專案四 猴子選大王

all right reserved.檔名稱 main.cpp 完成日期 2017年10月19日 版本號 v1.0 問題描述 猴子選大王 輸入描述 猴子數m和數到的數n 程式輸出 最後的大王編號 一群猴子,編號是1,2,3 m,這群猴子 m個 按照1 m的順序圍坐一圈。從第1只開始數,每數到第n個,...