7、标题:报数问题
【报数问题】有n个人围成一圈,顺序排号为1-n,从第1个人开始报数(从1到3报数),凡报到3的人退出圈子,问最后留下的是原来第几号的那位。
输入描述:
输入人数n(n<1000)
输出描述:
输出最后留下来的是原来第几号
示 例:
输入
2
输出
2
def baoshu(n):
arr = [x for x in range(1, n + 1)]
i = 1
j = 0
while len(arr) > 1:
if i == 3:
arr.pop(j)
i = 1
else:
i += 1
j += 1
if j > len(arr) - 1:
j = 0
return arr[0]
print(baoshu(5))