/ Vijos / 题库 /

约瑟夫问题[5]

约瑟夫问题[5]

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


【问题描述】

  有 \(k\) 个坏人 \(k\) 个好人坐成一圈,前 \(k\) 个为好人(编号 \(1..k\)),后 \(k\) 个为坏人(编号 \(k+1..2k\)), 现在有一个报数 \(m\),从编号为 1 的人开始报数,报到 \(m\) 的人就要自动死去。 问当 \(m\) 为什么值时,可以使得在出现好人死亡之前,\(k\) 个坏人先全部死掉?

【输入格式】

  包含若组测试数据,每组数据占一行一个整数 \(k\),表示有 \(k\) 个好人和 \(k\) 个坏人。最后一为 0 表示测试数据结束。

【输出格式】

  每组测试数据输出一行,表示最小的 \(m\)。

【输入输出样例】

 Input

3
4
0

 Output

5
30

【数据说明】

  对于 \(100\%\) 的数据 \(0 < k < 14\),最多不超过20万组测试数据。

【来源】

  Mr.he

信息

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