class Solution: # 动态规划:dp(n) = (dp(n - 1) + m) % n # 自己删掉第m个后,重新摆一下就知道了。 # 用来描述的、最终求解的,都是第几位第几位。 # 所以dp(n)删除第m位后再求解,就等价于,dp(n-1)先移动m位再求解 def LastRemaining_Solution(self, n: int, m: int) -> int: dp = 0 for i in range(2, n + 1): dp = (dp + m) % i return dp

京公网安备 11010502036488号