python 解决约瑟夫环问题

2023-11-16

题目1:计算约瑟夫环问题
tips:《幸运的基督徒》
有15个基督徒和15个非基督徒在海上遇险,为了能让一部分人活下来不得不将其中15个人扔到海里面去,有个人想了个办法就是大家围成一个圈,由某个人开始从1报数,报到9的人就扔到海里面,他后面的人接着从1开始报数,报到9的人继续扔到海里面,直到扔掉15个人。由于上帝的保佑,15个基督徒都幸免于难,问这些人最开始是怎么站的,哪些位置是基督徒哪些位置是非基督徒。输出最后站位,用1表示是基督徒,0表示非基督徒;
⚠️
约瑟夫环问题中的1和0最好用字符串表示,不要用数字,因为下面代码合并的时候会根据第二题浮点型数字默认第一题的整型数据也为浮点型

⚠️
L1用字符串表示1和0,本题的答案只有1和0

def joseph_survivor(n,m,s):
    data = []# 存储所有的原始数据
    delData = [] #存储被删除的数据
    num = 0 #计数用索引
    for i in range(1,n+1): # 使用for循环完成初始数据的设置包含1-41的数字,共41项
        data.append(i)

    while len(data) > m: #重复执行,直到原始数据的长度为1为止
        num +=1         #每次,计数索引+1
        temp = data.pop(0)  #将该数据从原始数据当中取出(删除),存在一个临时变量里面
        if num == s:
            delData.append(temp)
            num = 0
        else:
            data.append(temp)
    return data

data = joseph_survivor(30,15,9) #30为总人数,15为剩余人数,9为步长

#最开始的排列方式
data01 = []
for i in range(1,31):
    if i in data:
        data01.append("1")
    else:
        data01.append("0")
data01
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

python 解决约瑟夫环问题 的相关文章

随机推荐

  • 机器学习——决策树(Decision Trees)

    决策树 决策树是机器学习中一种最为常见的算法 顾名思义 决策树是基于树结构来进行决策的 这恰是人类在面对决策问题时一种很自然的处理机制 决策树的生成算法可以说是信息论的一种应用 但它其实只用到了信息论中的一小部分思想 因此对信息论有个基础性
  • Python系列教程-目录

    转载至 http www cricode com 3086 html Python初级教程 Python快速教程 手册 Python基础01 Hello World Python基础02 基本数据类型 Python基础03 序列 Pytho
  • CSS 之层叠规则(权级、权重、顺序)详解

    文章目录 参考 描述 定义 层叠 层叠与冲突 规则 权重 优先级 权重值的叠加 顺序 权级 权级 层叠规则的运用 顺序 尾声 参考 项目 描述 MDN WEB Docs 优先级 Amily mo 令人烦恼的css选择器权值问题 Amily
  • 《TCP/IP网络编程》--基于TCP实现字符串对话和文件传输

    1 基于TCP实现字符串对话 主要需求 服务器端和客户端各传递 1 次字符串 基于 TCP 协议 传递字符串前先以 4 字节整数型方式传递字符串长度 剩余部分为字符串数据 注 下面的代码基于 Windows 系统实现 1 1 服务器端 gc
  • Java中实现ftp下载文件至本地(详细)

    Java中实现ftp下载文件至本地 详细 欢迎关注蚕豆公众号 不定时分享技术 同时欢迎加入蚕豆技术群哦 扫描公众号点击关于作者加群 2020 09 13 今天记录一下java中实现ftp下载文件至本地的功能模块 同此与大家交流分享有什么不对
  • js每日定时请求接口

    需求是每日十点请求一次接口 初始方法是写一个一分钟的轮询 定时查询系统时间 如果时间为10点就执行请求函数 但是考虑这样太浪费资源 在师傅的帮助下找到了一个更优的方法 计算当前时间和目标时间的时间间隔 如果超过 则设置定时查询的时间间隔为距
  • 线段树合并例题

    https www luogu com cn problem P3224 1 永无乡 题意 给 n 个岛屿 每个岛有一个标号 初始修有 m 条路 有两个操作 操作1 为 给两个岛屿之间修路 操作2为求出 所有能从当前岛屿到达的岛 中标号第k
  • shell脚本之if多分支和case分支语句

    文章目录 一 多分支if语句 二 case分支语句 三 实操 3 1 系统控制服务脚本 控制服务的启动 重启 停止 3 2 根据学生的成绩 判断优秀 良好 和不及格几个等级 3 3 删除家目录 3 4 剪刀石头布 电脑与人 3 5 case
  • 软件测试从业人员学历和专业分布情况

    随着 十四五 规划对科技创新提出了更迫切的要求 国内人工智能 AI 物联网 大数据 云计算等IT产业得到了迅速发展 可是现阶段 我国软件测试基础人才不足 已成为制约我国软件产业发展的瓶颈 据国家权威部门统计 中国软件测试人才缺口近40万 并
  • 华为手机连电脑_华为手机也能连苹果电脑!文件互传超方便~

    每个人手机里 都存了许多回忆 有人会珍藏很多难忘的影像 有人会保存甜蜜或珍贵的聊天记录 也有人小心翼翼地保管着自己的通讯录 俗话说 未雨绸缪才能有备无患 为防止手机里的数据丢失 做好备份实在是太有必要了 今天花部长就来给大家讲一讲 华为 荣
  • jsp自定义tag标签

    首先定义use tag 存放目录在 WEB INF tags use tag div p This is a test p br div
  • JAVA中方法的值传递

    首先了解在程序设计语言中 有关将参数传递给方法的一些专业术语 按值调用 call by value 表示方法接收的是调用者提供的值 而按引用调用 call by reference 表示方法接收的是调用者提供的变量地址 一个方法可以修改传递
  • 【uniapp】五、通用插件封装与运行平台判断(续集)

    一 uniapp项目目录 uniapp给我们的项目框架介绍 有一些文件夹是没有在模板中内置的 因此我们需要自己手动创建以下 例如最外层的components 用来放置我们的一些全局通用组件 components 符合vue组件规范的uni
  • Mybatis 查询出来的数据集合数量正确,但是具体数据为null

    目录 回顾场景 问题分析 解决方案 把对应的实体类字段名与数据库的保持一致 然后查询 回顾场景 确认sql语句没有问题 可以在数据库查询出来 3条数据 但是通过代码查询出来List集合 看到数量是对的 但是里面的数据全部为空null 问题分
  • 服务大厅支撑系统 服务器,GB∕T 36639-2018 信息安全技术 可信计算规范 服务器可信支撑平台(高清版).pdf...

    2018年新发布国家标准 即将实施 及早知悉 把握先机 ICS35 040 L80 中华人 民共和 国国家标准 GBT36639 2018 信息安全技术 可信计算规范 服务器可信支撑平台 Informationsecurittechnolo
  • 模拟电路设计(11)--- 运算放大器实际使用注意事项

    判断是否负反馈状态 我们先来说下什么是负反馈 凡是将放大电路输出量 电压或电流 直流或交流 的一部分或全部 通过一定的电路 称为反馈电路 以一定的方式 串联或并联 反送到放大电路的输入电路 减小净输入量 从而使输出量比无反馈时也随之减小的反
  • 灾难恢复! 关于做过快照的AVHD文件合并成VHD .

    http bbs 51cto com thread 964919 1 html 应用实例 某公司新装一台虚拟化服务器 采用W2008R2 用三个硬盘 其中一个固态硬盘用来做父系统 2个SAS硬盘做RAID1 存储VHD 某管理员3个月前安装
  • 防火墙双机热备

    目录 防火墙双机热备概述 VRRP VRRP术语 VRRP和Cisco的HSRP的区别 VRRP的状态机 VRRP的工作原理 双机热备的备份方式自动备份 该莫试下 和双机热备有关的配置命令只能在主用设备上配置 主用设备自动将状态信息同步到备
  • Elasticsearch5.5-IK分词器安装

    0 下载对应的版本IK https github com medcl elasticsearch analysis ik releases 1 在elasticsearch的plugins文件夹下新建ik目录 2 讲下载下来的ik分词器解压
  • python 解决约瑟夫环问题

    题目1 计算约瑟夫环问题 tips 幸运的基督徒 有15个基督徒和15个非基督徒在海上遇险 为了能让一部分人活下来不得不将其中15个人扔到海里面去 有个人想了个办法就是大家围成一个圈 由某个人开始从1报数 报到9的人就扔到海里面 他后面的人