Em uma festa, fui apresentado ao jogo LCR. Agora não é um ótimo jogo, pois não há habilidade, mas apenas chance aleatória. Mas isso me fez pensar: eu poderia codificar isso e fiz um rápido programa em R para modelar o jogo.
Regras do jogo modificadas da Wikipedia para combinar com a forma como jogamos:
Cada jogador recebe pelo menos 3 fichas. Os jogadores jogam três dados de seis lados, cada um deles marcado com "L", "C", "R" de um lado e um ponto nos três lados restantes. Para cada "L" ou "R" jogado, o jogador deve passar uma ficha para o jogador à sua esquerda ou direita, respectivamente. Um "C" indica um chip para o centro (pote). Um ponto não tem efeito.
Se um jogador tiver menos de três fichas restantes, ele ainda estará no jogo, mas seu número de fichas é o número de dados que eles jogam no turn, em vez de jogar as três. Quando um jogador tem zero fichas, eles passam os dados no seu turno, mas podem receber fichas de outros e fazer o próximo turno de acordo. O vencedor é o último jogador a colocar fichas no centro.
Concurso: escreva um programa no seu idioma de escolha que inclua o número de jogadores e o número de fichas iniciais e simule um jogo de LCR, mostrando o estado do jogo após o lançamento de cada jogador.
Por exemplo, um jogo pode ser exibido como:
[[[3,3,3,3],0],[[1,4,3,4],0],[[1,4,3,4],0],[[1,4,1,4],2],[[1,4,1,2],4],
[[0,4,1,3],4],[[0,3,2,3],4],[[0,3,0,3],6],[[0,3,1,1],7],[[0,3,1,1],7],
[[2,0,1,1],8],[[2,0,0,1],9],[[2,0,0,0],10],[[0,1,0,0],11],
[[1,0,0,0],11],[[1,0,0,0],11],[[1,0,0,0],11],[[0,0,0,0],12]]
ht: JonathanAllan
A saída não precisa ser exatamente assim, mas deve ser fácil discernir a rolagem de dados, quantas fichas cada jogador tem e quantas fichas o centro tem para cada turno.
É código de golfe, então o código mais curto vence.
[[[3,3,3,3],0],[[1,4,3,4],0],[[1,4,3,4],0],[[1,4,1,4],2],[[1,4,1,2],4],[[0,4,1,3],4],[[0,3,2,3],4],[[0,3,0,3],6],[[0,3,1,1],7],[[0,3,1,1],7],[[2,0,1,1],8],[[2,0,0,1],9],[[2,0,0,0],10],[[0,1,0,0],11],[[1,0,0,0],11],[[1,0,0,0],11],[[1,0,0,0],11],[[0,0,0,0],12]]
- é esse o caso?