description
有n個小孩圍成一圈,給他們從1開始依次編號,現指定從第w個開始報數,報到第s個時,該小孩出列,然後從下乙個小孩開始報數,仍是報到s個出列,如此重複下去,直到所有的小孩都出列(總人數不足s個時將迴圈報數),求小孩出列的順序。
input
第一行輸入小孩的人數n(n<=64)
接下來每行輸入乙個小孩的名字(人名不超過15個字元)
最後一行輸入w,s (w < n),用逗號","間隔
output
按人名輸出小孩按順序出列的順序,每行輸出乙個人名
sample input
5xiaoming
xiaohua
xiaowang
zhangsan
lisi
2,3
sample output
zhangsanxiaohua
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 接下來每行...