"Josephus-p‌r‌o‌b‌l‌e‌m" mit Liste in Python

Ich wollte wissen, ob es möglich ist, das Josepheus-Problem mit list in python zu lösen.

In einfachen Worten, das Josephus-Problem besteht darin, eine Position in einer kreisförmigen Anordnung zu finden, die sicher wäre, wenn die Ausführung unter Verwendung eines zuvor bekannten Skip-Parameters ausgeführt würde.

Zum Beispiel: bei einer kreisförmigen Anordnung wie[1,2,3,4,5,6,7] Bei einem Skip-Parameter von 3 werden die Personen in der Reihenfolge ausgeführt, in der3,6,2,7,5,1 und Position4 wäre das sicher.

Ich habe seit einiger Zeit versucht, dieses Problem mithilfe der Liste zu lösen, aber die Indexpositionen sind für mich schwierig zu handhaben.

 a=[x for x in range(1,11)]
 skip=2
 step=2
 while (len(a)!=1):
   value=a[step-1]
   a.remove(value)
   n=len(a)
   step=step+skip
   large=max(a)
   if step>=n:        
      diff=abs(large-value)
      step=diff%skip
   print a

Aktualisierte Die Frage mit Code-Schnipsel, aber ich glaube nicht, dass meine Logik richtig ist.

Antworten auf die Frage(5)

Ihre Antwort auf die Frage