解题思路:刚开始把所有的人放到一个列表里面去,报的数字不是3就把这个人放到列表的最后一个位置上面去,如果是3就把这个数字从列表中去掉。直到列表剩下一个人为止
注意事项:
参考代码:
n = int(input())
l = list(range(1,n+1)) #l=[1,2...n]
index = 0 #记录到第几个数了
while l:
temp = l.pop(0)
index += 1
if index == 3:
index = 0 #到3后从1开始数
continue
l.append(temp)
if len(l) == 1:
for i in l:
print(i)
break
0.0分
0 人评分
C语言考试练习题_保留字母 (C语言代码)浏览:581 |
C语言程序设计教程(第三版)课后习题6.5 (Java代码)浏览:1124 |
C语言程序设计教程(第三版)课后习题11.3 (C语言代码)浏览:1049 |
C语言程序设计教程(第三版)课后习题9.2 (Java代码)浏览:632 |
求圆的面积 (C语言代码)浏览:1271 |
C语言程序设计教程(第三版)课后习题5.7 (C语言代码)浏览:966 |
WU-格式化数据输出 (C++代码)浏览:1212 |
C语言程序设计教程(第三版)课后习题6.5 (C++代码)浏览:458 |
校门外的树 (C语言代码)浏览:702 |
P1000 (C语言代码)浏览:877 |