2019-08-16 剑指 孩子们的游戏(圆圈中最后剩下的数)

2019-08-16  本文已影响0人  mztkenan

问题出如果去掉的是最后一个,cur从哪里开始计数

class Solution:
    def LastRemaining_Solution(self, n, m):
        if n<1 or m<1:return -1
        res=[i for i in range(n)]

        cur=0
        while len(res)>1:
            for i in range(m-1):
                cur+=1
                cur%= len(res)  # 这里倒是最关键的一点
            res.pop(cur)
        return res[0]
        if n<1 or m<1:return -1
        res=[i for i in range(n)]

        cur=0
        while len(res)>1:
            cur=(cur+m-1)%len(res) 
            res.pop(cur)
        return res[0]
上一篇 下一篇

猜你喜欢

热点阅读