17 lines
291 B
Python
17 lines
291 B
Python
def josephus(n, k):
|
|
a = list(range(1, n + 1))
|
|
a[n - 1] = 0
|
|
p = 0
|
|
v = []
|
|
while a[p] != p:
|
|
for i in range(k - 2):
|
|
p = a[p]
|
|
v.append(a[p])
|
|
a[p] = a[a[p]]
|
|
p = a[p]
|
|
v.append(p)
|
|
return v
|
|
|
|
josephus(10, 2)
|
|
|
|
josephus(41, 3)[-1]
|