标题:幸运儿 c语言
只看楼主
云lsq
Rank: 1
等 级:新手上路
帖 子:9
专家分:0
注 册:2017-11-3
结帖率:50%
已结贴  问题点数:10 回复次数:1 
幸运儿 c语言
n 个人围成一圈, 并依次编号1~n,。从编号为1 的人开始,按顺时针方向每隔一人选出一个,剩下的人重新围成一圈,如此循环直到剩下两人,这剩下的两人就是幸运儿。如果你想成为最后两个幸运儿,请问开始时应该站在什么位置?(设3<=n<=50)
有多个测试序列。每行是开始时的人数n
输出
第1 行是选出顺序,第2 行是两名幸运儿的开始位置(按升序排列),位置编号之间用一个空格分开。
样例输入
12
20
45

样例输出
2 4 6 8 10 12 3 7 11 5
1 9
2 4 6 8 10 12 14 16 18 20 3 7 11 15 19 5 13 9
1 17
2 4 6 8 10 12 14 16 18 20 22 24 26 28 30 32 34 36 38 40 42 44 3 7 11 15 19 23 27 31 35 39 43 5 13 21 29 37 45 9 25 41 17
1 33

提示
搜索更多相关主题的帖子: c语言 围成一圈 编号 位置 输出 
2017-12-23 11:37
吹水佬
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
等 级:版主
威 望:432
帖 子:10064
专家分:41463
注 册:2014-5-20
得分:10 
这个有点象“约瑟夫环”问题,搜索一下有好多类似问题贴。
2017-12-23 14:41



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-483646-1-1.html




关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.353470 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved