python入栈出栈实现约瑟夫环
约瑟夫环问题
据说著名犹太历史学家Josephus有过以下的故事:在罗马人占领乔塔帕特后,39 个犹太人与Josephus及他的朋友躲到一个洞中,39个犹太人决定宁愿死也不要被敌人抓到,于是决定了一个自杀方式,41个人排成一个圆圈,由第1个人开始报数,每报数到第3人该人就必须自杀,然后再由下一个重新报数,直到所有人都自杀身亡为止。然而Josephus 和他的朋友并不想遵从。首先从一个人开始,越过k-2个人(因为第一个人已经被越过),并杀掉第k个人。接着,再越过k-1个人,并杀掉第k个人。这个过程沿着圆圈一直进行,直到最终只剩下一个人留下,这个人就可以继续活着。问题是,给定了和,一开始要站在什么地方才能避免被处决?
实例化42人res = []
for i in range(1,42):res.append(i)自杀条件为 人数大于2(满足三人即自杀)
while len(res) >2:""" #永远不取下标为2的元素 (同时达到了循环终止的条件) 出栈 res[0:3] 下标为0一直到下标为2的元素被丢出去了入栈 res[0:2] 下标为0到下标为1的元素回到了栈中即每一次出栈的只有下标为2的元素,也就是3和3的整数倍""" res = res[3:]+res[:2]print(res)
python入栈出栈实现约瑟夫环相关推荐
- 随手小代码——约瑟夫出圈问题/约瑟夫环
还是自己写的靠得住. /* 约瑟夫出圈问题 给定m.n两个数,从1到n循环的数,每m的倍数时输出当前的数,直到所有的都输出为止. */#include <iostream>using na ...
- Java开发中巧妙使用链表来实现模拟栈的入栈出栈操作
2019独角兽企业重金招聘Python工程师标准>>> 在Java开发中经常会碰到需要你用Java链表来实现入栈出栈的模拟操作,下文就这个操作做了一个详细的描述. 栈:后进先出:最后 ...
- 2023新华为OD机试题 - 入栈出栈(JavaScript) | 刷完必过
华为Od必看博客 华为od 2023 | 什么是华为od,od 薪资待遇,od机试题清单 华为OD机试真题大全,用 Python 解华为机试题 | 机试宝典 华为OD机试 全流程解析+经验分享,题型分 ...
- 【Android 逆向】x86 汇编 ( push / pop 入栈 / 出栈 指令 | ret / retn 函数调用返回指令 | set 设置目标值指令 )
文章目录 一.push / pop 入栈 / 出栈 指令 二.ret / retn 函数调用返回指令 三.set 设置目标值指令 总结 一.push / pop 入栈 / 出栈 指令 push / p ...
- 数据结构 - 栈(链表实现栈的入栈出栈)
学完链表和栈,数组模拟栈学完后,自己根据链表写了个链栈,虽然只是简单的实现了入栈出栈遍历.收获还是很大的. 在push这里思考了一会,思路是:传入一个数字,push里创建一个节点node,把数据加入n ...
- 【数据结构】栈详解——压栈/入栈 | 弹栈/出栈 | 获取栈顶元素
栈 顺序栈 栈的定义 栈(stack)又名堆栈,它是一种运算受限的线性表.限定仅在表尾进行插入和删除操作的线性表.这一端被称为栈顶,相对地,把另一端称为栈底.向一个栈插入新元素又称作进栈.入栈或压栈, ...
- PLC实现入栈出栈功能
入栈出栈 实现需求 准备工作 入栈 PLC程序 仿真效果 出栈 PLC程序 仿真效果 源程序 实现需求 使用西门子PLC实现入栈出栈的功能,出入栈顺序为先入先出 准备工作 创建FC块.入栈和出栈两个F ...
- PLC实现入栈出栈功能(SCL)
PLC实现入栈出栈功能(SCL 引言 功能需求 准备工作 入栈 PLC程序 出栈 PLC程序 触摸屏画面程序 源程序 引言 之前用梯形图实现了PLC入栈出栈功能,这次使用SCL来实现此功能. 功能需求 ...
- Go语言_数据结构_栈(包括入栈和出栈,表达式的入栈出栈详细过程代码实现)
入栈和出栈代码实现如下: package main import ("fmt""errors" )//使用数组来模拟一个栈的使用 type Stack stru ...
- 华为OD机试 - 入栈出栈(C++) | 附带编码思路 【2023】
刷算法题之前必看 参加华为od机试,一定要注意不要完全背诵代码,需要理解之后模仿写出,通过率才会高. 华为 OD 清单查看地址:https://blog.csdn.net/hihell/categor ...
最新文章
- IC卡读卡器web开发,支持IE,Chrome,Firefox,Safari,Opera等主流浏览 器
- BCH易于使用不只是说说而已
- 存储过程,触发器,函数
- 打破系统边界,云端协同创新——专访华为云视频架构师 黄挺
- python入门经典100例-【python】编程语言入门经典100例--37
- 【codevs1907】【方格取数3】二分图最大带权独立集
- c#类 对象 构造函数 析构函数——面向对象
- 【Caffe】caffe框架讲解,解析修改caffemodel与prototxt
- OTA时代来了!由新一代私有云揭开序幕
- JAVA 读取shp数据,shp导入,导出工具
- 有什么适合小团队的协作工具?
- android nfc扇区加密,uniapp安卓NFC MifareClassic读IC卡加密扇区方法
- echarts生成图表的简单使用
- Web简易二手网购网页
- 去除office非正版提示的方法(转)
- 如何用 CSS 和原生 JS 创作一个展示苹果设备的交互动画
- 使用python语言,利用tushare进行股票筛选
- ​东京大学商汤悉尼大学等提出融合了动态规划、分治算法的MIM,实现绿色高效层次Transformer!已开源!...
- android 用canvas 绘制简单圆形时钟
- win10 64位运行chkdsk命令无反应
热门文章
- 山西台达plc可编程控制器_PLC(可编程控制器)的点动控制原理
- 苹果亮度自动调节怎么关闭_为何安卓自动亮度调节做不好?小米张国全释疑
- 摄影测量——单片空间后方交会
- 基因表达式编程(GEP)自学 第【7】天 Python 实现
- 555低电平出发定时器
- QT Libvlc音视频环境配置及编译错误解决
- 华为工程师猝死,36岁,22月无休:比挣钱更重要的是活着
- mac 10.8 montion lion 山狮系统上 安装 rails 和 oci8 连 oracle 数据库
- python图像纹理提取_python 实现 gabor 滤波器提取纹理特征 提取指静脉纹理特征 指静脉切割代码...
- c语言无法定位程序输入点 于动态链接库,无法定位程序输入点 于动态链接库怎么办...