/ Vijos / 题库 /

约瑟夫问题[2]

约瑟夫问题[2]

时间限制:1秒  内存限制:256M


【题目描述】

  编号为:\(1、2、3、…、N\) 的 \(N\) 个人按顺时针方向围坐一圈,每人持有一个密码(正整数)。从指定编号为 1 的人开始,按顺时针方向自 1 开始顺序报数,报到指定数 \(M\) 时停止报数,报 \(M\) 的人出列,并将他的密码作为新的 \(M\) 值,从他在顺时针方向的下一个人开始,重新从 1 报数,依此类推,直至所有的人全部出列为止。请设计一个程序求出列的顺序。

【输入格式】

  第一行两个整数 \(N,M\);
  接着下来的 \(N\) 行,每行一个整数,第 \(i+1\) 行的整数表示第 \(i\) 个人持有的密码。

【输出格式】

  \(N\) 行,按顺序输出出列人的编号。

【输入输出样例】

 Input

5 3
2
3
1
2
3

 Output

3
4
1
5
2

【数据限制】

  对于 \(100\%\) 的数据满足,\(2≤N,M≤10000\)。

【来源】

  Mr.he

信息

ID
1701
难度
(无)
分类
模拟 | 数据结构 | 队列链表 点击显示
标签
(无)
递交数
0
已通过
0
通过率
?
被复制
3
上传者