约瑟夫生者死者小游戏
"""
30 个人在一条船上,超载,需要 15 人下船。
于是人们排成一队,排队的位置即为他们的编号。
报数,从 1 开始,数到 9 的人下船。
如此循环,直到船上仅剩 15 人为止,问都有哪些编号的人下船了呢?
"""
peoples = {}
for x in range(1, 31):
peoples[x] = 1
print(peoples)
i = 1
j = 0
check = 0
while True:
if j == 15:
break
elif i == 31:
i = 1
else:
if peoples[i] == 0:
i += 1
continue
else:
check += 1
if check == 9:
peoples[i] = 0
j += 1
check = 0
print("{}号下船了".format(i))
i += 1