Você está na página 1de 3

UNIVERSIDADE FEDERAL RURAL DO SEMIRIDO DEPARTAMENTO DE CINCIAS EXATAS

E DA NATUREZA
CURSO DE CINCIA DA COMPUTAO
Disciplina: Matemtica Discreta 2014.2
Professora: Walter Martins
Aluno (a): Hugo Dionizio Santos

Problema de Josephus
1 O PROBLEMA
O Problema de Recorrncia de Josephus, diz que, durante a Guerra dos Judeus,
Flavius Josephus se encontrava entre um bando entre 11 e 41 judeus rebeldes,
encurralados por soldados do Imprio Romano em uma caverna.
Sem chance de fuga o grupo decide pela morte ao invs do aprisionamento, os
rebeldes formam um crculo e comeariam a partir de certo ponto pular duas
pessoas e a matar a terceira pessoa numa direo fixa, a eliminao procede em
torno do crculo que ir se tornando menor conforme as pessoas mortas so
removidas, at no restar algum vivo.
Conta a lenda que, graas ao seu talento matemtico, Josephus conseguiu escapar
desta tolice quanto ao suicdio ao encontrar o local no crculo inicial em que ser o
ltimo.
Neste trabalho h a generalizao do passo, ou seja, o tamanho do pulo de cada
execuo.

2 RESOLUO
O problema foi desenvolvido na linguagem C++ com a utilizao da estrutura de
dados de uma fila implementada por um vetor.
As variveis para resolver o problema so:
A quantidade de rebeldes;

A posio escolhida pelo jogador;


O tamanho do passo (pulo de execuo);
A ordem de execuo na posio na posio escolhida;
A ltima posio a ser executada (Posio de Josephus).

Neste trabalho, limitou-se a encontrar as duas ltimas ordem de execuo da


posio escolhida e Posio de Josephus, a partir dos valores de entrada da
quantidade de rebeldes, posio do jogador e tamanho do pulo.
O algoritmo pode ser visto no anexo.

3 RESULTADOS
O problema foi desenvolvido na linguagem C++ com a utilizao da estrutura de
dados de uma fila implementada por um vetor.
Utilizando um exemplo para 12 rebeldes, onde (n) uma posio de execuo:
Com passo de 1 posio:
1 (2) 3 (4) 5 (6) 7 (8) 9 (10) 11 (12) = 12 rebeldes
1 (3) 5 (7) 9 (11) = 6 rebeldes
1 (5) 9 = 3 rebeldes
1 (9) = 2 rebeldes
9 = Josephus

Com passo de 2 posies:


1 2 (3) 4 5 (6) 7 8 (9) 10 11 (12) = rebeldes
1 2 (4) 5 7 (8) 10 11 = 8 rebeldes
(1) 2 5 (7) 10 11 = 6 rebeldes
(2) 5 10 (11) = 4 rebeldes
(5) 10 = 2 rebeldes
10 = Josephus

4 CONCLUSO
Com base nos resultados e nos passos

T ( 1, n )=1
chega-se formula fechada:

T ( n , k ) =( k1+T (n1, k ))mod (n+1)