约瑟夫环模拟,约瑟夫环,ring.pydef
约瑟夫环模拟,约瑟夫环,ring.pydef
ring.py
def solve(ring, start, stop): length = len(ring) if start > 1: ring = ring[start-1:] + ring[0:start-1]# print(ring) print("start counting ...") count = 0 while length > 1: for i in range(0, stop): print(i+1, end=" ") count += 1 if count > length: count = count % length# print("count: ", count) quit = ring.pop(count-1) ring = ring[count-1:] + ring[:count-1] length = len(ring) print("quit the ring: ", quit) count = 0# print(ring) return ringif __name__ == "__main__": """已知n个人(以编号1,2,3...n分别表示)围坐在一张圆桌周围。 从编号为k的人开始报数,数到m的那个人出列; 他的下一个人又从1开始报数,数到m的那个人又出列; 依此规律重复下去,直到圆桌周围的人全部出列。 """ print(solve([1,2,3,4,5,6,7,8,9], 1, 5)) print(solve([1,2,3,4,5,6,7,8,9], 3, 5)) print(solve(['a','b','c','d','e','f','g','h','i','j','k'], 1, 3))
相关内容
- n皇后问题的优化解法,n皇后解法,[Python]代码nu
- 算术表达式分析法大全(其实就三种),算术分析法
- 纯Python实现的DES加解密算法,pythondes解密算法,test_pyd
- AES加密,,[Python]代码fr
- 猜数游戏,猜数,[Python]代码de
- python抓取网页及网页上所有连接的演示代码,python抓取
- 查单词的脚本,单词脚本,#!/usr/bin/p
- Python xml和xsl转换为html,pythonxmlxslhtml,用的libxml2,所以
- 创建并修改excel,创建修改excel,[Python]代码#创
- python分页类,python分页,python分页类#co
评论关闭