当前位置:首页 > 建站过程 > 正文内容

Python 约瑟夫生者死者小游戏

暮看云4年前 (2022-09-26)建站过程599

题目:

30 个人在一条船上,超载,需要 15 人下船。

于是人们排成一队,排队的位置即为他们的编号。

报数,从 1 开始,数到 9 的人下船。

如此循环,直到船上仅剩 15 人为止,问都有哪些编号的人下船了呢?

网上的答案感觉可读性差,于是重新写的代码:

list = []

for x in range(1,31):

list.append(x)

print("大家依次排成一排:")

print(list)

print("开始下船,喊道9的出列----")

j = 0 #从1数到9,如此 反复。。。

i = 0 #列表中的序号,对列表操作要用到

left = 0 #表示离开的人

# print("开始排序号:",j)

while left < 15: #因为要求只能剩下15人,这里表示离开的人如果小于15人就继续。。。

j += 1

i += 1

# print("---------我是分隔符--------")

# print("开始报数,j=",j)

# print('序号i=', i)

# print("叫到的号是:",list[i-1])

    if j == 9:  #当数到9的时候就开始扔,

    Lnum = list[i-1]

    print(Lnum,"号下船了。")

    list.remove(Lnum)

    left += 1

    j = 0

    i -= 1#当列表中元素被删除后,后面的元素要往前移动,这里表示序号往前补上

# print("---------我是分隔符--------")

    if (i+left) == 30:#因为列表删除了元素,i表示的序号就少了,加上离开的人数刚好30.i是递增的,

# print("剩下的队伍是:")

# print(list)

    i = 0#加到最后,表示序号到最后,这一轮列表已经到末尾了,又从新来

此前对i的操作用过 for i in list,但发现遍历的方法无法对其中的i进行操作。





分享给朋友:

“Python 约瑟夫生者死者小游戏” 的相关文章

都2022年了,个人网站有啥用

都2022年了,个人网站有啥用

都2022年了,互联网已经发生了很大的变化。曾经在知乎上看到过一个题目,讲的是10年前的网络是个什么样子。经历了千禧年的我们这一代,自然也经历了互联网的发展,从最初的QQ,Email,到后来的微信,再是神器PS,到今天的抖音。甚至连字节跳动都已经从流量神坛跌落到平庸。抖音还是那个抖音,而各大媒体平台...

你能否拼过“二代”们

你能否拼过“二代”们

小雕这次数学考试得了99+20,错了一道选择题,还是有点马虎大意,稍有遗憾,但还行,毕竟全部做出来了。相比上次考的85,进步很多。上一次数学单元测验考的不好,我们大人总结出的原因是,两位数的竖式乘法没有掌握,是根本原理都不懂。我让她做了几道题,发现她完全没明白原理,不知道上课开啥小差了。经过一晚上的...

谁来守护我们的数字财产

谁来守护我们的数字财产

上周末突然发现,微薄账户被封,查看原因发现半个月前,微薄发布了不法信息。微薄在10年的时候注册的,那时候还不怎么去管,有一段时间发现被盗号了,但是只是用作了僵尸粉,没有做什么出格的事。后来把账号找回了,还修改了密码。手机号码也是现在的手机号,估计没什么问题了吧。微薄的密码策略也很繁琐,后来密码改得连...

AI爆发,人人都能玩GPT

AI爆发,人人都能玩GPT

事情要从一个月前说起,没年这时候,公司基本上就没什么事了,行业原因,淡季时候,大家也就是上上网,等着年底分产值,过年。来公司两年半了,历经两个春节,这是第三个,第一年的世间要长一些,我用了两个月世间,学了PHP,用ThinkPHP6.0,搭建了网站,天哪,这是什么操作。这样的周期,在一个月前开始。人...

自建网站音乐播放

自建网站音乐播放

上周在某盘上发现了共享的音乐文件,音质还相当不错。想着自己每月交的10块VIP,若想听更高音质的音乐还得另行交钱,何必惯着它,正好自己也有服务器,何不自己搭建个音乐网站,可以自己上传高音质文件,以后想听啥就听啥。实现路径最初考虑的是在已有可道云上传,用已有的jplayer播放器播放。问题是,jpla...