题目:有n个人围成一圈,顺序排号。从第一个人开始报数(从1到3报数),凡报到3的人退出圈子,问最后留下的是原来第几号的那位。
代码:
n=int(input("请输入n:"))
number=[]
k=0
j=1
for i in range(0,n):
number.append(i+1)
while j<10:
flag=0 #避免最后只剩一个元素,反复加同一个元素的情况
for i in range(0,n):
if number[i]!=0:
flag+=1
k+=1
if k%3==0:
number[i]=0
#print(flag)
if(flag<3): break #只有两个元素或者一个元素的时候,不可能在出现3
j+=1
for i in range(0,n):
if number[i]!=0:
print(i+1)
样例:
请输入n:34
10