不可以
发表于 2017-9-17 09:44:58
学习
伪教父
发表于 2017-10-23 21:44:04
怎么做到的呢
a5509
发表于 2017-11-13 21:45:39
不懂怎么写,看一下
编程新血
发表于 2017-11-21 19:46:52
从连接跳过来的,看看,学习一下.
被翻红浪
发表于 2017-12-21 12:23:03
有思路了
枫树霜雪
发表于 2017-12-21 14:43:13
学习一下
JAY饭
发表于 2018-2-26 15:26:27
def yue(n,k):
list_y =
t = list_y.pop(k-1)
while len(list_y) > 1:
if len(list_y) < k:
t1 = (k-1)%len(list_y)
t = list_y.pop(t1)
list_y = list_y + list_y[:t1]
else:
list_y = list_y + list_y[:k-1]
t = list_y.pop(k-1)
print(list_y.pop()+1)
yue(100,3)
yue(10000,6)
JAY饭
发表于 2018-2-26 17:43:59
效率一点都比不上你
def yue1(n,k):
list_x =
list_y = list_x[:]
t = k-1
while len(list_x) > 1:
if len(list_x)<k:
list_x.pop(t1)
t1 = (t1+k-1)%(len(list_x))
else:
for i,j in enumerate(list_x):
if i%k == t:
c = i
list_y.remove(j)
t1 = t = (c + k - len(list_x))
list_x = list_y[:]
print(list_x.pop()+1)
yue1(100000,6)
topscien
发表于 2018-3-1 14:17:57
我是来抄答案的!{:5_97:}
Charonnnnn
发表于 2018-3-21 20:45:36
la'la
phthon_yw
发表于 2018-3-21 21:29:03
看一看
Even_138
发表于 2018-3-27 11:19:13
学习一下
小酒酒
发表于 2018-4-7 17:16:22
学习一下
Peanut丶酱
发表于 2018-4-10 12:45:33
我想看看,源码,谢谢{:5_91:}
colinshi
发表于 2018-4-10 13:47:00
我来看看结果。我的想法是,定义两个变量,一个变量为人数n,一个变量为k,然后循环N次,每次K+=k,最终K/n的余数就是最后剩下的人
kokawu
发表于 2018-4-12 18:12:27
看看帖子里藏了啥好东西~~~
kokawu
发表于 2018-4-13 08:17:06
看看帖子里藏了啥好东西~~~
tayy
发表于 2018-4-22 21:19:43
num = int(input('多少人围成一圈:'))
list1 = list(range(1, num + 1))
n = 2
while len(list1) > 1:
list1.pop(n)
n = (n + 2) % len(list1)
print('最后留下的是原来第%d号'%list1)
小强工作室
发表于 2018-4-23 14:04:25
学习一下
badaoqingchen
发表于 2018-4-23 17:23:33
本帖最后由 badaoqingchen 于 2018-4-23 17:32 编辑
x = range(1, n+1)
while 1:
if len(x) == 1:
print x
break
if len(x) == 2:
print x
break
x1 = len(x)%3
x0 = []
for i in x:
if (x.index(i)+1) %3 == 0:
print i
x0.append(i)
for i in x0:
x.remove(i)
for i in range(x1):
x.insert(0,x[-1])
x = x[:-1]