编程题:7203 约瑟夫环问题
约瑟夫问题是大家所熟知的。如果你不知道这个问题的话,这里可以简短地描述:给定n个编号依次为1,2,…,n,站成一圈,循环报数,报数到m的人将依次被处决,而且只有最后剩下的一个人可以得救。约瑟夫可以聪明地为自己选择最后剩下的那个位置,以使自己得救,因此才有机会告诉我们这件事。例如,n=6,m=5时,依次被处决的人是:5,4,6,3,2,只有第1个人可以被得救。
假设有k个好人和k个坏人,而且在这个圆圈里,前k个人是好人,而后k个人是坏人。你必须选取最小的m值,使得所有的坏人先被处决掉。
### 输入格式:
输入文件包含若干行,每行都是一个数,即k,0 < k < 14。输入文件的最后一行为0,表示输入结束。
### 输出格式:
对输入文件中的每个k值,输出对应的m值。
### 输入样例:
in
3
4
0
### 输出样例:
out
5
30
答案:若无答案欢迎评论
假设有k个好人和k个坏人,而且在这个圆圈里,前k个人是好人,而后k个人是坏人。你必须选取最小的m值,使得所有的坏人先被处决掉。
### 输入格式:
输入文件包含若干行,每行都是一个数,即k,0 < k < 14。输入文件的最后一行为0,表示输入结束。
### 输出格式:
对输入文件中的每个k值,输出对应的m值。
### 输入样例:
in
3
4
0
### 输出样例:
out
5
30
答案:若无答案欢迎评论