1925: 约瑟夫问题

内存限制:256 MB 时间限制:1.000 S
评测方式:文本比较 命题人:
提交:35 解决:8

题目描述

    正如经典的约瑟夫问题,N个人顺时针围成一圈,以1~N标号。

从第一个人开始按顺时针方向报数。当某人报到2时,这个人就要出局。然后从这个人顺时针数剩下的第一个人开始继续报数。这样一直到只剩下一个人为止。

比如有5个人顺时针站成一圈,记为(1, 2, 3),以下模拟报数的过程:

初始: (1, 2, 3)

2出局:(1, 3)

1出局:(3)

则最终剩下来唯一一个人为3。

J(N)表示N个人报数剩下的那个人的标号,比如说J(3) = 3。

输入

    一个整数N,满足1 <= N <= 10^9。

输出

    一个整数J(N)。

样例输入 复制

3

样例输出 复制

3