n个人排成一圈。从某个人开始,按顺时针方向依次编号。从编号为1的人开始顺时针“一二一”报数,报到2的人退出圈子。这样不断循环下去,圈子里的人将不断减少。由于人的个数是有限的,因此最终会剩下一个人。试问最后剩下的人最开始的编号。
2159: 约瑟夫问题10E100版
时间限制: 0 Sec 内存限制: 128 MB提交: 0 解决: 0
[上一题][提交][讨论版][状态][下一题]
题目描述
输入 [ysfwteb.in]
        一个正整数n,表示人的个数。输入数据保证数字n不超过100位。
输出 [ysfwteb.out]
        一个正整数。它表示经过“一二一”报数后最后剩下的人的编号。
样例输入
9
样例输出
3
提示
样例说明
当n=9时,退出圈子的人的编号依次为:
      2    4    6    8    1    5    9    7
最后剩下的人编号为3
标签
All Copyright Reserved 2010-2014 Olympiad in Informatics TEAM