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之正规地说一句话
Sep 28 Python
在Python的Flask框架下使用sqlalchemy库的简单教程
Apr 09 Python
Python第三方库的安装方法总结
Jun 06 Python
[原创]教女朋友学Python3(二)简单的输入输出及内置函数查看
Nov 30 Python
windows下 兼容Python2和Python3的解决方法
Dec 05 Python
Python标准库使用OrderedDict类的实例讲解
Feb 14 Python
Python爬虫抓取技术的一些经验
Jul 12 Python
Django 静态文件配置过程详解
Jul 23 Python
Python Selenium 之数据驱动测试的实现
Aug 01 Python
numpy.array 操作使用简单总结
Nov 08 Python
Python3获取cookie常用三种方案
Oct 05 Python
Python模拟登录requests.Session应用详解
Nov 17 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 模板高级篇总结
2006/12/21 PHP
PHP array_push 数组函数
2009/12/26 PHP
关于php连接mssql:pdo odbc sql server
2011/07/20 PHP
apache+codeigniter 通过.htcaccess做动态二级域名解析
2012/07/01 PHP
windows下配置php5.5开发环境及开发扩展
2014/12/25 PHP
php使用 readfile() 函数设置文件大小大小的方法
2017/08/11 PHP
ThinkPHP5.0框架控制器继承基类和自定义类示例
2018/05/25 PHP
Laravel框架生命周期与原理分析
2018/06/12 PHP
laravel-admin select框默认选中的方法
2019/10/03 PHP
jquery 日期分离成年月日的代码
2010/05/14 Javascript
javascript实现点击按钮让DIV层弹性移动的方法
2015/02/24 Javascript
js实现滑动触屏事件监听的方法
2015/05/05 Javascript
JS组件Bootstrap Select2使用方法详解
2020/04/17 Javascript
Javascript实现图片懒加载插件的方法
2016/10/20 Javascript
json的结构与遍历方法实例分析
2017/04/25 Javascript
Vue的事件响应式进度条组件实例详解
2018/02/04 Javascript
JS简单实现查看文档创建日期、修改日期和文档大小的方法示例
2018/04/08 Javascript
Vue下拉框回显并默认选中随机问题
2018/09/06 Javascript
NodeJs之word文件生成与解析的实现代码
2019/04/01 NodeJs
解决vuex改变了state的值,但是页面没有更新的问题
2020/11/12 Javascript
[02:27]2014DOTA2国际邀请赛 VG赛后采访:更大的挑战在等着我们
2014/07/13 DOTA
完美解决Python2操作中文名文件乱码的问题
2017/01/04 Python
python实现分页效果
2017/10/25 Python
Python除法之传统除法、Floor除法及真除法实例详解
2019/05/23 Python
python实现的多任务版udp聊天器功能案例
2019/11/13 Python
Python OrderedDict字典排序方法详解
2020/05/21 Python
深入分析python 排序
2020/08/24 Python
Python3实现英文字母转换哥特式字体实例代码
2020/09/01 Python
Python中logging日志的四个等级和使用
2020/11/17 Python
Html5中的桌面通知Notification的实现
2018/09/25 HTML / CSS
阿迪达斯印度官方商城:adidas India
2017/03/26 全球购物
eDreams澳大利亚:预订机票、酒店和度假产品
2017/04/19 全球购物
Shopee马来西亚:随拍即卖,最佳行动电商拍卖平台
2017/06/05 全球购物
培训讲师邀请函
2014/01/10 职场文书
幼儿园保教管理制度
2014/02/03 职场文书
人事专员岗位职责
2015/02/03 职场文书