原题链接
本题,实际上是约瑟夫环的问题。如果实打实的去模拟,那确实是有些费劲。不过该问题,有非常简单的算法。
具体原理可以参考这篇文章约瑟夫环问题的公式解法
本体代码如下
n,pos = eval(input()),0
for cnt in range(2,n+1):
pos = (pos+3)%cnt
print(pos+1)
只要明白了公式的原理,其实代码是相当简洁的。
本题,实际上是约瑟夫环的问题。如果实打实的去模拟,那确实是有些费劲。不过该问题,有非常简单的算法。
具体原理可以参考这篇文章约瑟夫环问题的公式解法
n,pos = eval(input()),0
for cnt in range(2,n+1):
pos = (pos+3)%cnt
print(pos+1)
只要明白了公式的原理,其实代码是相当简洁的。