7 28 猴子選大王 20分

2021-10-03 20:37:34 字數 663 閱讀 7308

一群猴子要選新猴王。新猴王的選擇方法是:讓n只候選猴子圍成一圈,從某位置起順序編號為1~n號。從第1號開始報數,每輪從1報到3,凡報到3的猴子即退出圈子,接著又從緊鄰的下乙隻猴子開始同樣的報數。如此不斷迴圈,最後剩下的乙隻猴子就選為猴王。請問是原來第幾號猴子當選猴王?

輸入格式:

輸入在一行中給乙個正整數n(≤1000)。

輸出格式:

在一行中輸出當選猴王的編號。

輸入樣例:

11輸出樣例:

7看了約瑟夫環問題後寫了乙個差不多的。

#include

#include

typedef

struct node

node;

node *p;

node *r;

intmain()

r->next=head;

//尾結點指向頭節點。迴圈鍊錶建立完成。

p=head;

while

(p->next!=p)

//當p->next==p時,鍊錶中只剩乙個結點。即為要輸出的數

else

}printf

("%d"

,p->num)

;//輸出編號即可

}

不對的地方希望大家多指出交流ya~

7 28 猴子選大王(20 分)

7 28 猴子選大王 20 分 一群猴子要選新猴王。新猴王的選擇方法是 讓n只候選猴子圍成一圈,從某位置起順序編號為1 n號。從第1號開始報數,每輪從1報到3,凡報到3的猴子即退出圈子,接著又從緊鄰的下乙隻猴子開始同樣的報數。如此不斷迴圈,最後剩下的乙隻猴子就選為猴王。請問是原來第幾號猴子當選猴王?...

7 28 猴子選大王 (20 分

一群猴子要選新猴王。新猴王的選擇方法是 讓n只候選猴子圍成一圈,從某位置起順序編號為1 n號。從第1號開始報數,每輪從1報到3,凡報到3的猴子即退出圈子,接著又從緊鄰的下乙隻猴子開始同樣的報數。如此不斷迴圈,最後剩下的乙隻猴子就選為猴王。請問是原來第幾號猴子當選猴王?輸入格式 輸入在一行中給乙個正整...

7 28 猴子選大王 20分

題目 一群猴子要選新猴王。新猴王的選擇方法是 讓n只候選猴子圍成一圈,從某位置起順序編號為1 n號。從第1號開始報數,每輪從1報到3,凡報到3的猴子即退出圈子,接著又從緊鄰的下乙隻猴子開始同樣的報數。如此不斷迴圈,最後剩下的乙隻猴子就選為猴王。請問是原來第幾號猴子當選猴王?輸入格式 輸入在一行中給乙...