编程题

现有n个人依次围成一圈玩游戏,从第1个人开始报数,数到第m个人出局,然后从出局的下一个人开始报数,数到第m个人又出局,...,如此反复到只剩下最后一个是胜利者。设n个人的编号分别为1,2,...,n,打印出局的顺序。

根据上述算法思想,补全下列代码。

输入输出示例:当n=10,m=4,输出如下:

出局的人是: 4

出局的人是: 8

出局的人是: 2

出局的人是: 7

出局的人是: 3

出局的人是: 10

出局的人是: 9

出局的人是: 1

出局的人是: 6

最后胜利者是: 5

def fun(n,k):

L = list( ① )

if n == 1:

return

else:

x = 0

for i in ②

x = ③ - 1

print('出局的人是:',L[x])

del L[x]

if x < 0:

x = 0

print('最后胜利者是:', ④ )

fun(10,4)

点赞(0) 打赏

评论列表 共有 0 条评论

暂无评论