这个算法是扩展约瑟夫算法。
算法的描述:

具体的实现是这样的:
def J(n,x):
Dk = 1
while Dk <= (x-1)*n:
Dk = math.ceil((x/(x-1))*Dk)
return (x*n+1-Dk)
我大致的想法就是解关于 k 的方程:

从而得到 k 关于 n 和 x 的表达式,再保留高阶项得到最终的结果
最终通过化简得到的复杂度的结果是:

但是从来没有见到过这样的复杂度...
因为自己也刚刚开始学数据结构与算法,所以恳请各位帮忙算一算