Python 围圈报数

题目:有n个人围成一圈,顺序排号。从第一个人开始报数(从1到3报数),凡报到3的人退出圈子,问最后留下的是原来第几号的那位。

输入:8  输出:7

用list实现循环遍历的过程

import copy
a=[1,2,3,4,5,6,7,8]
b =[]
count =0
while len(a) >= 2:
    for i in range(len(a)):
        if a[i] not in b:
            b.append(a[i])
        count +=1
        if count %3 ==0:
            print(i,count)
            b.remove(a[i])
    a = copy.deepcopy(b)
    b =[]
print(a[0])

你可能感兴趣的:(python,开发语言)