大家好,我是小曜,我来为大家解答以上问题。1号报告厅,1号报很多人还不知道,现在让我们一起来看看吧!
1、C++的:
2、#include <iostream>
3、#include <queue>
4、using namespace std;
5、int main()
6、{
7、 int monkeys(0),max(0);
8、 int count,ID;
9、 queue<int> circle;
10、 while (monkeys<=0||max<=0)
11、 {
12、 cout<<"How many monkeys:";
13、 cin>>monkeys;
14、 cout<<"The ones count which number can leave:";
15、 cin>>max;
16、 }
17、 for (ID=1;ID<=monkeys;++ID)
18、 circle.push(ID);
19、 count=0;
20、 while (circle.size()>1)
21、 {
22、 ++count;
23、 ID=circle.front();
24、 circle.pop();
25、 if (count==max) {
26、 cout<<ID<<endl;
27、 count=0;
28、 }
29、 else circle.push(ID);
30、 }
31、 ID=circle.front();
32、 cout<<"The monkey marked with number "<<ID<<" will be left behind. ";
33、 return ID;
34、}
35、这是结果e68a84e799bee5baa6e79fa5e9819331333236373166:
36、How many monkeys:30
37、The ones count which number can leave:5
38、5
39、10
40、15
41、20
42、25
43、30
44、6
45、12
46、18
47、24
48、1
49、8
50、16
51、23
52、2
53、11
54、21
55、29
56、13
57、26
58、7
59、22
60、9
61、28
62、19
63、17
64、27
65、4
66、14
67、The monkey marked with number 3 will be left behind.
本文到此讲解完毕了,希望对大家有帮助。