Python3 notes

简介: Python3 notes

Python ALIVE AND DEAD – JosephLoendorf

方法一:

#约瑟夫环问题,n=30,报数为9的下船,最终船上剩下15人

li=list(range(30))

countNum=1 

#下船人数计数 取值1-15

while countNum<=15:

   i=1 

   #排序计数,取值1-9

   while i<9:

       li.append(li.pop(0)) 

       #每遍历一个元素,把当前元素追加到列表末尾,这样做是为了方便循环遍历

       i+=1

   print('{}号下船了'.format(li.pop(0)+1))

   countNum +=1

思想就是:队列从头开始按顺序报 1-9 之间的数,报完数的人站到队列末尾,报数是 9 的成员下船,如果有人下船,则下一个人从 1 开始报数,循环继续,直至下船人数达到 15 人停止。

所以该方法特点:第一、报数的人一定站在队列首位,当然下船的人也是在首位。第二、每下船一人,队列长度减一。第三、下船人号码正好是初始序列号码,在编程中表现即是下船号码是列表索引加 1。


方法二:

使用列表切片来生成新的队列,并且改进之前的初始生成序列 0-29 为 1-30。

#利用切片来生成新的队列

li=list(range(1,31))

countNum=1

for i in li:

   if countNum<=15:

       print('{}号下船了'.format(li[8]))

       li=li[9:]+li[:8]

   countNum +=1

相关文章
|
8月前
|
SQL 关系型数据库 MySQL
Python3 notes
Python3 notes
|
8月前
|
调度
解释一下为什么协程比线程更轻量级。
解释一下为什么协程比线程更轻量级。
331 1
|
8月前
|
资源调度 JavaScript 开发者
插件使用:扩展Vue功能与第三方插件
【4月更文挑战第23天】Vue凭借其轻量级和灵活性在Web开发中备受青睐,而插件则进一步增强了其功能。本文探讨了如何在Vue项目中选择、安装、配置和管理插件,以适应不同需求。要点包括:选择可靠且兼容的插件,使用npm或yarn安装,根据文档配置,以及注意性能影响。明智使用插件能提升开发效率,但需避免过度依赖,确保与项目目标和技术栈匹配。不断学习新插件,可保持技术领先并优化项目实践。
83 0
|
弹性计算 容灾 网络安全
阿里云服务器专有网络是什么?可用区随机怎么选?
2023阿里云服务器专有网络是什么?可用区随机怎么选?阿里云服务器网络及可用区,网络指的是专有网络VPC,可用区是指同一个地域下网络和电力相互独立的区域,专有网络是用户在云端的私有网络,专有网络之间逻辑上彻底隔离,用户可以在专有网络上设置IP地址段、交换机和路由表等。阿里云百科来详细说下什么是专有网络以及可用区选择方法:
343 0
阿里云服务器专有网络是什么?可用区随机怎么选?
|
存储 缓存 NoSQL
【Redis7】Redis7概述、安装和卸载
本文重点介绍Redis7的概述和安装与卸载。
615 0
|
机器学习/深度学习 自然语言处理 并行计算
【NLP】Transformer理论解读
Transformer 是 Google 的团队在 2017 年提出的一种 NLP 经典模型,目前已经在目标检测、自然语言处理、时序预测等多个深度学习领域获得了应用,成为了新的研究热点。
231 0
【NLP】Transformer理论解读
|
网络协议 数据挖掘 Python
第99天:TCP 编程
第99天:TCP 编程
199 0
第99天:TCP 编程
|
存储 架构师 NoSQL
DDD的优势(1)
DDD的优势(1)
331 0
DDD的优势(1)
|
存储 分布式计算 DataWorks
【MaxCompute 常见问题】 安全管理
MaxCompute可以对单个表授权吗? MaxCompute 提供了 ACL(基于对象)、跨项目数据分享和项目数据保护等多种授权方式。我们推荐您优先使用ACL 授权,而非 Policy(基于策略)授权。
【MaxCompute 常见问题】 安全管理
|
存储 数据可视化 API
70个注意的Python小Notes
Python读书笔记:70个注意的小Notes 作者:白宁超 2018年7月9日10:58:18 摘要:在阅读python相关书籍中,对其进行简单的笔记纪要。旨在注意一些细节问题,在今后项目中灵活运用,并对部分小notes进行代码标注。
1361 0