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网络爬虫采集联想词示例
Feb 11 Python
Python中的闭包详细介绍和实例
Nov 21 Python
对比Python中__getattr__和 __getattribute__获取属性的用法
Jun 21 Python
pandas的连接函数concat()函数的具体使用方法
Jul 09 Python
浅谈Python中函数的定义及其调用方法
Jul 19 Python
Django ImageFiled上传照片并显示的方法
Jul 28 Python
pytorch下大型数据集(大型图片)的导入方式
Jan 08 Python
Python3 io文本及原始流I/O工具用法详解
Mar 23 Python
如何在python中执行另一个py文件
Apr 30 Python
Python如何在main中调用函数内的函数方式
Jun 01 Python
利用Python批量识别电子账单数据的方法
Feb 08 Python
详解非极大值抑制算法之Python实现
Jun 28 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
PHP中array_merge和array相加的区别分析
2013/06/17 PHP
Discuz7.2版的faq.php SQL注入漏洞分析
2014/08/06 PHP
MAC下通过改apache配置文件切换php多版本的方法
2017/04/26 PHP
layui数据表格自定义每页条数limit设置
2019/10/26 PHP
asp javascript 实现关闭窗口时保存数据的办法
2007/11/24 Javascript
Javascript学习笔记5 类和对象
2010/01/11 Javascript
THREE.JS入门教程(1)THREE.JS使用前了解
2013/01/24 Javascript
JavaScript 实现类的多种方法实例
2013/05/01 Javascript
js将字符串转成正则表达式的实现方法
2013/11/13 Javascript
JavaScript—window对象使用示例
2013/12/09 Javascript
CSS3实现动态背景登录框的代码
2015/07/28 Javascript
javascript发送短信验证码实现代码
2015/11/12 Javascript
jQuery插件实现无缝滚动特效
2015/11/24 Javascript
Angular发布1.5正式版,专注于向Angular 2的过渡
2016/02/18 Javascript
jquery实现上传文件大小类型的验证例子(推荐)
2016/06/25 Javascript
EasyUI学习之DataGird分页显示数据
2016/12/29 Javascript
jQuery开源组件BootstrapValidator使用详解
2017/06/29 jQuery
JS中定位 position 的使用实例代码
2017/08/06 Javascript
nodejs的路径问题的解决
2018/06/30 NodeJs
JQuery样式与属性设置方法分析
2019/12/07 jQuery
详解如何在JS代码中消灭for循环
2019/12/11 Javascript
[46:57]EG vs Winstrike 2018国际邀请赛小组赛BO2 第二场 8.18
2018/08/19 DOTA
Python 文件操作实现代码
2009/10/07 Python
Python中的闭包实例详解
2014/08/29 Python
django与小程序实现登录验证功能的示例代码
2019/02/19 Python
仓库门卫岗位职责
2013/12/22 职场文书
户外亲子活动策划方案
2014/02/07 职场文书
大学竞选班长演讲稿
2014/04/24 职场文书
巴西世界杯32强口号
2014/06/05 职场文书
财务检查整改报告
2014/11/06 职场文书
表扬通报怎么写
2015/01/16 职场文书
男方婚前保证书
2015/02/28 职场文书
少年犯观后感
2015/06/11 职场文书
大学校园餐饮创业计划书
2019/08/07 职场文书
开学第一周日记(三篇范文)
2019/08/23 职场文书
原生JS封装vue Tab切换效果
2021/04/28 Vue.js