小孩報數問題

2021-07-14 22:03:43 字數 1306 閱讀 3868

description

有n個小孩圍成一圈,給他們從1開始依次編號,現指定從第w個開始報數,報到第s個時,該小孩出列,然後從下乙個小孩開始報數,仍是報到s個出列,如此重複下去,直到所有的小孩都出列(總人數不足s個時將迴圈報數),求小孩出列的順序。

input

第一行輸入小孩的人數n(n<=64)

接下來每行輸入乙個小孩的名字(人名不超過15個字元)

最後一行輸入w,s (w < n),用逗號","間隔

output

按人名輸出小孩按順序出列的順序,每行輸出乙個人名

sample input

5

xiaoming

xiaohua

xiaowang

zhangsan

lisi

2,3

sample output

zhangsan

xiaohua

xiaoming

xiaowang

lisi

普通版:

#include#includeusing namespace std;

int main()

scanf("%d,%d", &w, &s);

int count = 0;                            //記錄經過未標記的名字幾次

int k = 0;                                //記錄輸出的次數

for (int i = w; k!=n ; i++)

}return 0;

}線性表:

#include#includeusing namespace std;

class seqlist         //獲取長度

private:

int length;

string name[65];

};seqlist::seqlist(string str, int n)

length = n;

}string seqlist::delete(int i)

length--;                                //刪除乙個結點,長度減 1

return x;

}int main()

scanf("%d,%d", &w, &s);

seqlist s(str, n);

while(n--)

else

else }}

return 0;

}

小孩報數問題

約瑟夫環佇列實現 有n個小孩圍成一圈,給他們從1開始依次編號,現指定從第w個開始報數,報到第s個時,該小孩出列,然後從下乙個小孩開始報數,仍是報到s個出列,如此重複下去,直到所有的小孩都出列 總人數不足s個時將迴圈報數 求小孩出列的順序。input 第一行輸入小孩的人數n n 64 接下來每行輸入乙...

小孩報數問題

約瑟夫環 有n個小孩圍成一圈,給他們從1開始依次編號,現指定從第w個開始報數,報到第s個時,該小孩出列,然後從下乙個小孩開始報數,仍是報到s個出列,如此重複下去,直到所有的小孩都出列 總人數不足s個時將迴圈報數 求小孩出列的順序。input 第一行輸入小孩的人數n n 64 接下來每行輸入乙個小孩的...

2 小孩報數問題

description 有n個小孩圍成一圈,給他們從1開始依次編號,現指定從第w個開始報數,報到第s個時,該小孩出列,然後從下乙個小孩開始報數,仍是報到s個出列,如此重複下去,直到所有的小孩都出列 總人數不足s個時將迴圈報數 求小孩出列的順序。input 第一行輸入小孩的人數n n 64 接下來每行...