要求編寫乙個函式king,實現猴子選大王的功能。新猴王的選擇方法是:讓n只候選猴子圍成一圈(最多100只猴子),從某位置起順序編號為1~n號。從第1號開始報數,每輪從1報到3,凡報到3的猴子即退出圈子,接著又從緊鄰的下乙隻猴子開始同樣的報數。如此不斷迴圈,最後剩下的乙隻猴子就選為猴王。
測試輸入:5
預期輸出:4號猴子是大王。
測試輸入:18
預期輸出:14號猴子是大王。
這是乙個考察陣列迴圈的問題。
圍城乙個環的猴子,在處理下乙個猴子的時候,可以用以下**來實現。
k++;if
(k == n +1)
k =1;
int die_n =0;
while
(die_n
while
(a[order]==0
);count++;...}
當數到3的時候,要讓當前計數回到0,並且將這個猴子的值改為0,同時,被淘汰掉的猴子的個數要加一。
if
(count==3)
最後通過遍歷所有的猴子,找到那個值不為0 的猴子,即為猴子大王。
github原始碼位址
猴子選大王
方法一 include int main 初始化猴子全沒出局 值為0 int count 0 排除的猴子數量 int key 0 剩下的資料索引,即最後要得到的是陣列中第幾隻猴子是大王 int i 0,index 0 i代表計數器1 7,index代表陣列下標 while count 14 當猴子數...
猴子選大王
問題描述 一群猴子,編號是1,2,3 m,這群猴子 m個 按 照1 m的順序圍坐一圈。從第1只開始數,每數到第n個,該猴子就 要離開此圈,這樣依次下來,直到圈中只剩下最後乙隻猴子,則該 猴子為大王。輸入m和n,輸出為大王的猴子是幾號。輸入描述 m個猴子和要出去的位數n。程式輸出 king是誰。inc...
猴子選大王
問題 檔名稱 專案5.cpp 作 者 秦緒龍 完成日期 2016年9月23日 版 本 號 v1.0 問題描述 一群猴子,編號是1,2,3 m,這群猴子 m個 按照1 m的順序圍坐一圈。從第1只開始數,每數到第n個,該猴子就要離開此圈,這樣依次下來,直到 圈中只剩下最後乙隻猴子,則該猴子為大王。輸入m...