解题思路:刚开始把所有的人放到一个列表里面去,报的数字不是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语言代码)浏览:672 |
A+B for Input-Output Practice (IV) (C语言代码)浏览:493 |
数字游戏 (C++代码)浏览:1185 |
格式化数据输出 (C语言代码)浏览:822 |
C语言训练-大、小写问题 (C语言代码)浏览:682 |
C语言程序设计教程(第三版)课后习题10.5 (C语言代码)浏览:956 |
C语言程序设计教程(第三版)课后习题10.1 (C语言代码)浏览:771 |
C语言程序设计教程(第三版)课后习题1.5 (C语言代码)浏览:385 |
C语言程序设计教程(第三版)课后习题1.5 (C语言代码)浏览:445 |
Pascal三角 (C++代码)浏览:697 |