Python约瑟夫生者死者小游戏实例讲解


Posted in Python onJanuary 04, 2021

问题描述:

30 个人在一条船上,超载,需要 15 人下船。于是人们排成一队,排队的位置即为他们的编号。

报数,从 1 开始,数到 9 的人下船。如此循环,直到船上仅剩 15 人为止,问都有哪些编号的人下船了呢?

解决思路:

给30个人编号1-30,每个人的初值都是1(在船上),i代表他们的编号,j代表被扔下船的人数(j=15时循环结束),用check记数,check=9时将对应编号i的人置0(扔下船)并让check重新记数。

当i等于31时,手动将i置为1

当对应编号i的人值为0时,代表此人已经不在船上,i+1找到下一个人记数,以此类推。

people={}
for x in range(1,31):
  people[x]=1
# print(people)
check=0
i=1
j=0
while i<=31:
  if i == 31:
    i=1
  elif j == 15:
    break
  else:
    if people[i] == 0:
      i+=1
      continue
    else:
      check+=1
      if check == 9:
        people[i]=0
        check = 0
        print("{}号下船了".format(i))
        j+=1
      else:
        i+=1
        continue

执行以上实例,输出结果为:

9号下船了
18号下船了
27号下船了
6号下船了
16号下船了
26号下船了
7号下船了
19号下船了
30号下船了
12号下船了
24号下船了
8号下船了
22号下船了
5号下船了
23号下船了

到此这篇关于Python约瑟夫生者死者小游戏实例讲解的文章就介绍到这了,更多相关Python 约瑟夫生者死者小游戏内容请搜索三水点靠木以前的文章或继续浏览下面的相关文章希望大家以后多多支持三水点靠木!

Python 相关文章推荐
用python + openpyxl处理excel2007文档思路以及心得
Jul 14 Python
用实例详解Python中的Django框架中prefetch_related()函数对数据库查询的优化
Apr 01 Python
详解python中的线程
Feb 10 Python
Python callable()函数用法实例分析
Mar 17 Python
wx.CheckBox创建复选框控件并响应鼠标点击事件
Apr 25 Python
Python实现识别图片内容的方法分析
Jul 11 Python
Python利用递归实现文件的复制方法
Oct 27 Python
Django页面数据的缓存与使用的具体方法
Apr 23 Python
详解python websocket获取实时数据的几种常见链接方式
Jul 01 Python
使用Python自动生成HTML的方法示例
Aug 06 Python
如何编写python的daemon程序
Jan 07 Python
python神经网络Xception模型
May 06 Python
python邮件中附加文字、html、图片、附件实现方法
Jan 04 #Python
python自动化发送邮件实例讲解
Jan 04 #Python
Python Selenium库的基本使用教程
Jan 04 #Python
selenium学习教程之定位以及切换frame(iframe)
Jan 04 #Python
python自动打开浏览器下载zip并提取内容写入excel
Jan 04 #Python
python Scrapy框架原理解析
Jan 04 #Python
如何用 Python 处理不平衡数据集
Jan 04 #Python
You might like
【COS正片】蕾姆睡衣cos,纯洁可爱被治愈了 cn名濑弥七
2020/03/02 日漫
mysql+php分页类(已测)
2008/03/31 PHP
Laravel 5框架学习之环境与配置
2015/04/08 PHP
PHP基于openssl实现非对称加密代码实例
2020/06/19 PHP
背景音乐每次刷新都可以自动更换
2007/02/01 Javascript
JS操作数据库的实例代码
2013/10/17 Javascript
js模仿hover的具体实现代码
2013/12/30 Javascript
javascript数组常用方法汇总
2016/09/10 Javascript
使用canvas进行图像编辑的实例
2017/08/29 Javascript
seajs模块压缩问题与解决方法实例分析
2017/10/10 Javascript
原生JS实现 MUI导航栏透明渐变效果
2017/11/07 Javascript
vue-router之nuxt动态路由设置的两种方法小结
2018/09/26 Javascript
iview tabs 顶部导航栏和模块切换栏的示例代码
2019/03/04 Javascript
详解ng-alain动态表单SF表单项设置必填和正则校验
2019/06/11 Javascript
详解Webpack如何引入CDN链接来优化编译后的体积
2019/06/21 Javascript
Vue+iview+webpack ie浏览器兼容简单处理
2019/09/20 Javascript
javascript使用链接跨域下载图片
2019/11/01 Javascript
浅谈JSON5解决了JSON的两大痛点
2020/12/14 Javascript
[01:25:09]2014 DOTA2国际邀请赛中国区预选赛 5 23 CIS VS DT第二场
2014/05/24 DOTA
[31:33]2014 DOTA2国际邀请赛中国区预选赛 TongFu VS DT 第一场
2014/05/23 DOTA
python多线程方式执行多个bat代码
2016/06/07 Python
python的pdb调试命令的命令整理及实例
2017/07/12 Python
Python中的函数作用域
2018/05/07 Python
python使用matplotlib库生成随机漫步图
2018/08/27 Python
Django命名URL和反向解析URL实现解析
2019/08/09 Python
Python实现FLV视频拼接功能
2020/01/21 Python
运行Python编写的程序方法实例
2020/10/21 Python
德国健康生活方式网上商店:Landkaufhaus Mayer
2019/03/12 全球购物
经典C++面试题一
2016/11/06 面试题
C#怎么让一个窗口居中显示?
2015/10/20 面试题
毕业生精彩的自我评价分享
2013/10/06 职场文书
写给学生的新学期寄语
2014/01/18 职场文书
体育专业求职信
2014/07/16 职场文书
群众路线四风对照检查材料
2014/11/04 职场文书
婚宴新郎致辞
2015/07/28 职场文书
springboot如何初始化执行sql语句
2021/06/22 Java/Android