Preparing NOJ

约瑟夫问题

1000ms 65536K

Description:

17世纪的法国数学家加斯帕在《数目的游戏问题》中讲的一个故事:15个教徒和15 个非教徒在深海上遇险,必须将一半的人投入海中,其余的人才能幸免于难,于是想了一个办法:30个人围成一圆圈,从第一个人开始依次报数,每数到第九个人就将他扔入大海,如此循环进行直到仅余15个人为止。问怎样排法,才能使每次投入大海的都是非教徒。这个故事的问题是经典的约瑟夫问题。

      现在我们知道有n个教徒和非教徒,其中非教徒数为m,将他(她)们按从1n的次序放置到圆圈中,报数为k,要将所有非教徒投入大海,请按递增次序给出非教徒在圆圈中的次序。

Input:

每行是用空格分开的三个整数,第一个是 n, 第二个是 m,第三个是k ( 0 <= m<n <=1000 <k <=100)。最后一行是:

0 0 0

Output:

 对于每个测试用例,输出一行,依次包含:

l         Case #:”,#表示用例序号。

l         m非教徒在圆圈中的次序,以空格分隔;如没有非教徒,则无需输出。

Sample Input:

6 2 9
12 4 8
8 3 2
0 0 0

Sample Output:

Case 1: 1 3
Case 2: 1 4 8 11
Case 3: 2 4 6

Note:

 

本题由旧版NOJ导入,来源:NUPT

Info

NOJ

Provider NOJ

Code NOJ1597

Tags

Submitted 2

Passed 1

AC Rate 50%

Date 04/20/2019 10:03:10

Related

Nothing Yet