7-2 约瑟夫环 (10 分) python

阅读 31

2022-03-30

先看题目
在这里插入图片描述

class Queue1:
    def __init__(self):
        self.items = []
    def push(self,item):
        self.items.append(item)
    def pop(self):
        return self.items.pop(0)
    def isEmpty(self):
        return self.items ==[]
    def getFront(self):
        return self.items[0]
    def getSize(self):
        return len(self.items)
def hotpotato(ls,n):
    q =Queue1()
    for i in ls:
        q.push(i)
    while q.getSize()>1:
        for i in range(1,n):
            q.push(q.pop())
        q.pop()
    return q.pop()
while True:
    try:
        n = int(input())
        ls = list(range(1,n+1))
        print(hotpotato(ls,3))
    except:
        break

精彩评论(0)

0 0 举报