python模拟报数游戏

有n个人围成一圈,从0到n-1按顺序编号,从第一个人开始从1到k报数,报到k的人推出圈子,然后圈子缩小,从下个人继续游戏,问最后留下来的是几号?

from itertools import cycledef demo(people, k): # 报数报到k的人退出lst1 = people[:]while len(lst1) > 1:c = cycle(lst1) #将列表设为循环列表for i in range(k):t = next(c)index = lst1.index(t)lst1 = lst1[index + 1:] + lst1[:index]return lst1[0]people = list(range(1, 11)) #生成11个人
print(demo(people, 1))

python模拟报数游戏有n个人围成一圈,从0到n-1按顺序编号,从第一个人开始从1到k报数,报到k的人推出圈子,然后圈子缩小,从下个人继续游戏,问最后留下来的是几号?相关推荐

  1. 13个人围成一圈,从第1个人开始顺序报号1,2,3.凡报到3者退出圈子。找出最后留在圈子中的人原来的序号。要求用链表实现。

    13个人围成一圈,从第1个人开始顺序报号1,2,3.凡报到3者退出圈子.找出最后留在圈子中的人原来的序号.要求用链表实现. #include <stdio.h> #include < ...

  2. 13个人围成一圈,从第1个人开始顺序报号1、2、3,凡报到3的人退出圈子。找出最后留在圈子里的人原来的序号。

    [绕圈报数] 1130 更新 ======== 一般化情况 13个人围成一圈,从第1个人开始顺序报号1.2.3,凡报到3的人退出圈子.找出最后留在圈子里的人原来的序号. 输出提示 "出圈成员 ...

  3. 13个人围成一圈,从第1个人开始顺序报号1,2,3。 凡报到3者退出圈子

    #include <stdio.h> #include <stdlib.h> #define N 13 /* 13个人围成一圈,从第1个人开始顺序报号1,2,3. 凡报到3者退 ...

  4. c语言】13个人围成一圈,从第1个人开始顺序报号1,2,3.凡报到3者退出圈子。找出最后留在圈子中的人原来的序号

    题目(摘自谭浩强的C语言):有n个人围成一圈,顺序排号.从第一个人开始报数(从1到3报数),凡报到3的人退出圈子,问最后留下的是原来第几号的那个人. 解法思路:首先不要将思维局限在一圈人,可以先将n个 ...

  5. (python)约瑟夫(Josephus)个人围成一圈,并按顺时针依次编号1-n。从编号为1的人开始,按顺时针方向每隔一 人选出一个,剩下的人重新围成一圈,如此循环直到剩下两人,这剩下的两人就是幸运儿

    约瑟夫(Josephus)环问题 题目:n个人围成一圈,并按顺时针依次编号1-n.从编号为1的人开始,按顺时针方向每隔一 人选出一个,剩下的人重新围成一圈,如此循环直到剩下两人,这剩下的两人就是幸运儿 ...

  6. 算法训练 - 筛选号码 (有n个人围成一圈,顺序排号(编号为1到n)。从第1个人开始报数(从1到3报数),凡报到3的人退出圈子。从下一个人开始继续报数,直到剩下最后一个人,游戏结束。)

    问题描述 有n个人围成一圈,顺序排号(编号为1到n).从第1个人开始报数(从1到3报数),凡报到3的人退出圈子.从下一个人开始继续报数,直到剩下最后一个人,游戏结束. 问最后留下的是原来第几号的那位. ...

  7. 7-5 模拟报数游戏(约瑟夫环问题):有n个人围成一圈从1开始按顺序编号从第一个人开始从1到k报数,报到k的人退出圈子;然后圈子缩小,下一个人继续,问最后留下的是第几号(只留1 人)。要求定义函数

    学习记录与分享 PTA程序设计类教学平台-Python作业二(循环结构程序设计) 题目 7-5 模拟报数游戏(约瑟夫环问题) 有n个人围成一圈,从1开始按顺序编号,从第一个人开始从1到k报数,报到k的 ...

  8. 报数游戏是这样的:有n个人围成一圈,按顺序从1到n编好号。从第一个人开始报数,报到m的人退出圈子;下一个人从1开始报数,报到m的人退出圈子。如此下去,如此反复到所有人出列。

    报数游戏是这样的:有n个人围成一圈,按顺序从1到n编好号.从第一个人开始报数,报到m(<n)的人退出圈子:下一个人从1开始报数,报到m的人退出圈子.如此下去,如此反复到所有人出列.设n个人的编号 ...

  9. 有n个人围成一圈,按顺序从1到n编号。从第一个人开始报数,报数3的人退出圈子,下一个人从1开始重新报数,报数3的人退出圈子。如此循环,直到留下最后一个人。问留下来的人的编号。

    [问题描述]有n个人围成一圈,按顺序从1到n编号.从第一个人开始报数,报数3的人退出圈子,下一个人从1开始重新报数,报数3的人退出圈子.如此循环,直到留下最后一个人.问留下来的人的编号. [输入形式] ...

最新文章

  1. 人工智能与健康社会系列调研(一):人脸识别与公共卫生
  2. java -jar 和 -cp详解
  3. 【opencv4】opencv教程 C++ 4、Mat对象(深拷贝:clone()、copyTo(),create()创建图片,zeros()、eye()初始化空白图像,Scalar()创建向量)
  4. 安装 | MatlabR2021b链接及Matlabx运行图基本运行代码与图像
  5. 系统工具源码设计页面
  6. [Windows Server 2012] Discuz X3安全设置
  7. 排序算法(一)--桶排序、冒泡、快排(JAVA)
  8. Zabbix-1.8.14 安装
  9. .net中对时间的操作
  10. MongoDB健壮集群——用副本集做分片
  11. socket之远程执行命令
  12. 保存的离线网页总是自动跳转
  13. SVM实现鸢尾花分类
  14. InoReader——网页无法打开
  15. _variant_t数据类型
  16. 原理图中的电阻旁边有个”NC“,什么意思?
  17. C程序设计习题 - 顺序结构
  18. 微信小程序radio单选框如何修改宽高及选中样式
  19. 高斯 默克托投影知识
  20. 使用FirmAE 对zyxel路由器固件仿真实践 | 信息安全

热门文章

  1. 关闭windows正版验证
  2. 论文里的讨论怎么写?
  3. 人脸识别撞脸名画_你可能撞脸世界名画 支付宝让你遇见名画中的自
  4. 人人都是产品经理(创新版)
  5. ORA-20000:ORU-10027:buffer overflow,limit of 10000 bytes
  6. [转]为何我们这样一个“丑陋”的种族,能够屹立……
  7. cmd命令进行U盘分区
  8. 复旦大学教师 于娟博士《为啥是我得癌症?》
  9. VMware - 札记 - 电脑重启后虚拟机无法访问互联网/主机无法访问虚拟机
  10. 大虎2021软件校招笔试题