小孩報數問題
time limit:1000ms
memory limit:65536k
total submissions:15228
accepted:6778
description
有n個小孩圍成一圈,給他們從1開始依次編號,現指定從第w個開始報數,報到第s個時,該小孩出列,然後從下乙個小孩開始報數,仍是報到s個出列,如此重複下去,直到所有的小孩都出列(總人數不足s個時將迴圈報數),求小孩出列的順序。
input
第一行輸入小孩的人數n(n<=64)
接下來每行輸入乙個小孩的名字(人名不超過15個字元)
最後一行輸入w,s (w < n),用逗號","間隔
output
按人名輸出小孩按順序出列的順序,每行輸出乙個人名
sample input
5sample outputxiaoming
xiaohua
xiaowang
zhangsan
lisi
2,3
zhangsan約瑟夫問題是個有名的問題:n個人圍成一圈,從第乙個開始報數,第m個將被殺掉,最後剩下乙個,其餘人都將被殺掉。例如n=6,m=5,被殺掉的順序是:5,4,6,2,3,1。xiaohua
xiaoming
xiaowang
lisi
此題也是約瑟夫問題,此題有多種解法,可用鍊錶,陣列,還有vector等等,以下**vector所寫
1 #include2 #include3 #include4 #include5
using
namespace
std;
6 vectorstr;
7intn;8
intw,s;
9int
bg,en;
10int
main()
18 scanf("
%d",&w);
19 w--; //由於vector陣列從0開始,所以此時w要減一
20getchar();
21 scanf("
%d",&s);
22while(!str.empty())
28 }
POJ 3750 小孩報數問題 (約瑟夫環)
題意 給出n個小孩姓名,從w個開始數,數到第s個出列,輸出出列順序。題解 約瑟夫環 沒有用鍊錶做,太麻煩,這裡用的cir circi r 陣列,記錄是否出列。define crt secure no warnings include include include include include i...
約瑟夫環 poj 3750 小孩報數問題 模擬
language default 小孩報數問題 time limit 1000ms memory limit 65536k total submissions 10071 accepted 4702 description 有n個小孩圍成一圈,給他們從1開始依次編號,現指定從第w個開始報數,報到第s...
小孩報數問題 poj 3750
description 有n個小孩圍成一圈,給他們從1開始依次編號,現指定從第w個開始報數,報到第s個時,該小孩出列,然後從下乙個小孩開始報數,仍是報到s個出列,如此重複下去,直到所有的小孩都出列 總人數不足s個時將迴圈報數 求小孩出列的順序。input 第一行輸入小孩的人數n n 64 接下來每行...