時間限制
400 ms
記憶體限制
65536 kb
**長度限制
8000 b
判題程式
standard
作者 徐鏡春(浙江大學)
一群猴子要選新猴王。新猴王的選擇方法是:讓n只候選猴子圍成一圈,從某位置起順序編號為1-n號。從第1號開始報數,每輪從1報到3,凡報到3的猴子即退出圈子,接著又從緊鄰的下乙隻猴子開始同樣的報數。如此不斷迴圈,最後剩下的乙隻猴子就選為猴王。請問是原來第幾號猴子當選猴王?
輸入格式:
輸入在一行中給乙個正整數n(<=1000)。
輸出格式:
在一行中輸出當選猴王的編號。
輸入樣例:
11輸出樣例:
7一圈的迴圈演算法,每算一次都測一下陣列內是否只剩下乙個數
#include int main()
else
int j=1;
int k,m;
i=0;
int s=0;
while(s!=n-1)
i++;
}while(j<=3&&a[i]!=0)
j++;
i++;
}if(j==4)
i--;
a[i]=0;
j=1;
}s=0;
for(k=0;kif(a[k]!=0)
}} printf("%d\n",a[m]);
} }return 0;
}
陣列 11 猴子選大王 20
一群猴子要選新猴王。新猴王的選擇方法是 讓n只候選猴子圍成一圈,從某位置起順序編號為1 n號。從第1號開始報數,每輪從1報到3,凡報到3的猴子即退出圈子,接著又從緊鄰的下乙隻猴子開始同樣的報數。如此不斷迴圈,最後剩下的乙隻猴子就選為猴王。請問是原來第幾號猴子當選猴王?輸入格式 輸入在一行中給乙個正整...
陣列 11 猴子選大王 20
一群猴子要選新猴王。新猴王的選擇方法是 讓n只候選猴子圍成一圈,從某位置起順序編號為1 n號。從第1號開始報數,每輪從1報到3,凡報到3的猴子即退出圈子,接著又從緊鄰的下乙隻猴子開始同樣的報數。如此不斷迴圈,最後剩下的乙隻猴子就選為猴王。請問是原來第幾號猴子當選猴王?輸入格式 輸入在一行中給乙個正整...
猴子選大王 陣列版
問題描述 一群猴子,編號是1,2,3 m,這群猴子 m個 按照1 m的順序圍 坐一圈。從第1只開始數,每數到第n個,該猴子就要離開此圈,這樣依次下來,最後乙隻出圈的猴子為大王。輸入m和n,輸出猴子離開圈子的順序,從中也可以看出最後為大王是幾號猴子。要求採用陣列作為儲存結構完成。輸入描述 猴子的個數與...