用Python中的list分片方法解决约瑟夫环问题

原创 2015年07月09日 21:26:50
def func(n):
    person = []
    for num in range(1, n + 1):
        person.append(num)
    tag = True
    while len(person) > 1:
        length = len(person)
        if tag:
            person = person[::2]
        else:
            person = person[1::2]
        if length % 2:
            tag = False
    print(person)

相关文章推荐

10行Python代码解决约瑟夫环(模拟)

写这篇文章是因为看到别人博客里用了很长一个篇幅(超过50行)去解决一个约瑟夫环问题,而且还是用以简洁著称的python,另外,如果你用X度搜索python 约瑟夫,看到得前几条都是错的,真是好悲剧。 ...

约瑟夫环问题python解法

约瑟夫环问题:已知n个人(以编号1,2,3...n分别表示)围坐在一张圆桌周围。从编号为k的人开始报数,数到k的那个人被杀掉;他的下一个人又从1开始报数,数到k的那个人又被杀掉;依此规律重复下去,直到...

约瑟夫环 python 实现

面试的过程中遇到了这个问题。就是经典的约瑟夫环。

python实现约瑟夫环

python实现约瑟夫环

Python之约瑟夫环

约瑟夫环是一个数学的应用问题:已知n个人(以编号1,2,3...n分别表示)围坐在一张圆桌周围。从编号为k的人开始报数,数到m的那个人出列;他的下一个人又从1开始报数,数到m的那个人又出列;依此规律重...

Python - 实现约瑟夫环问题

算法集锦,持续更新中。。。 猴子选大王(约瑟夫环问题) 算法描述:m只猴子围坐成一个圈,按顺时针方向从1到m编号。然后从1号猴子开始沿顺时针方向从1开始报数,报到n的猴子出局,再从刚出局猴子的下一...
  • jark_
  • jark_
  • 2017年08月10日 17:18
  • 131

Python实现约瑟夫问题

约瑟夫环是一个数学的应用问题:已知n个人(以编号1,2,3...n分别表示)围坐在一张圆桌周围。从编号为k的人开始报数(包括自己在内,如m为1,则变为挨个自杀),数到m的那个人出列;他的下一个人又从1...

【Python】10行python代码实现约瑟夫问题

什么是约瑟夫问题? 约瑟夫问题是一个有趣的数学游戏,游戏规则如下: 1、N个人围成一个圈,编号从1开始,依次到N。 2、编号为M的游戏参与者开始报数,报数从1开始,后面的人报数接龙,直到K为止,报数为...
  • iEearth
  • iEearth
  • 2015年04月14日 17:09
  • 1314

c++多种方法解决约瑟夫环问题

  • 2013年11月19日 09:05
  • 7KB
  • 下载
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:用Python中的list分片方法解决约瑟夫环问题
举报原因:
原因补充:

(最多只允许输入30个字)