¿Alguien puede explicar el problema de Josefo en términos más simples? ¿Existe una ecuación para resolver el problema de Josefo?

Imagina n personas paradas en un círculo. Cada uno de ellos está numerado en sentido horario (o antihorario) de 0 a n-1 . El juego consiste en eliminar a una persona de una en una. Empiezas desde una persona y cuentas en la dirección en la que están numeradas y eliminas a cada késima persona del círculo. ( k> 0 )

El juego continúa con n-1 personas y comienzas a contar k desde la persona que está al lado de la eliminada. El que queda al final es declarado ganador.

El objetivo del juego es descubrir quién será el último jugador restante. Te dan el orden en que las personas están numeradas y k.

Tome un caso simple donde n = 5 y elimine a cada 3ra persona.

1er turno: {1,2,3,4,5}
Eliminado = 3

2º turno = {1,2,4,5}
Eliminado = 1

3er turno = {2,4,5}
Eliminado = 5

4to turno = {2,4}
Eliminado = 2

Ganador = 4

Como se puede ver en el juego, sigue una estructura recursiva.
Deje que el número del sobreviviente del juego se denote por f (n, k) . Cuando una persona es eliminada, n -> n-1 yk sigue siendo k . Pero dado que el índice cambia de elemento a k + 1º elemento, tenemos que agregar el término adicional k% n para cambiar los índices.

Por lo tanto, la solución recursiva es:

f (n, k) = (f (n-1, k) + k)% n
Caso base: f (1, k) = 0

El problema de Josephus se explica bien en el enlace de video adjunto.

Creo que este tipo responde a sus preguntas muy bien (aunque consideró el caso especial de cada segunda persona asesinada):


Puedes aprender más acerca de esto aquí :-

Problema de Josefo

Problema de Josefo