#Lutece3359. 约瑟夫问题
约瑟夫问题
Description
传统的约瑟夫问题为: 个人围成一圈,顺时针依次编号为 。从编号为 的人开始顺时针从 开始报数,每报到 时这个人就出局,之后他的下一个人又从 开始报数,最后询问剩下的那个人的编号。
而在本题中,每一轮的 都不完全相同。游戏一共进行 轮,你需要输出每一轮出局的人的编号。
Input
第一行两个正整数 ;
接下来 行,每行输入一个正整数 ,表示这一轮报到 的人出局。下一轮由出局的顺时针方向的下一个人开始报数。
Output
输出 行,第 行一个正整数,表示该轮出局的人的编号。
Samples
7 3
5
9
8
5
1
4
Note
样例如图所示,箭头表示报数顺序:
第一轮,从编号为 1 的人开始报数,报到 5 时编号为 5 的人出局,下一轮由编号为 6 的人开始报数;
第二轮,从编号为 6 的人开始报数,报到 9 时编号为 1 的人出局,下一轮由编号为 2 的人开始报数;
第三轮,从编号为 2 的人开始报数,报到 8 时编号为 4 的人出局。
Resources
The 21st UESTC Programming Contest Preliminary