Dice Cricket es un juego que me presentaron cuando era niño y que he utilizado como una forma de pasar el tiempo durante años. No pude encontrar una página de Wikipedia, así que explicaré las reglas a continuación.
Reglas de cricket de dados
Premisa
Dice Cricket es un juego similar a anotar un juego de cricket mientras lo miras, pero en lugar de mirar y registrar el resultado, estás tirando un dado y registrando el resultado.
Los resultados se registran en una tabla como se muestra en la parte inferior.
Monitor
Dice Cricket utiliza una pantalla específica para mostrar toda la información que ocurre.
La tabla tiene 11 filas. Cada fila representa una masa. El diseño de la fila se explica a continuación.
+------+------------------------------+---------+-----+
| Name | Runs | How Out |Score|
+------+------------------------------+---------+-----+
- Nombre: el nombre debe ser una cadena compuesta completamente de letras, mayúsculas o minúsculas
- Carreras: Un bateador puede enfrentar 30 bolas. Cada bola puede ser una de
1 2 4 6 . /
. Esto se explicará con más detalle a continuación. - How Out: La forma en que la masa estaba fuera. Puede ser cualquiera de
Bowled, LBW (Leg Before Wicket), Caught, Retired or Not Out
- Puntuación: la suma de todos los números en
Runs
Cómo funciona el juego
En un juego, siempre hay 2 bateadores en el campo. El primer jugador es por defecto el bateador actual y el segundo en el bateador "off".
Un juego se compone de "bolas": cada bola en un partido de cricket está representada por una tirada de dados. Cada rollo hace un comando diferente:
- 1,2,4 y 6 hacen que el bateador anote tanto. Si se lanza 1, la masa actual se convierte en la masa "apagada" y la masa "apagada" se convierte en la masa actual
- 3 es una "bola de puntos", lo que significa que no pasa nada. Se representa en la
Runs
sección como a.
y puntúa 0. A0
no se puede usar para representarlo. - 5 es un wicket. Si se lanza 5, el bateador actual está "fuera". Esto significa que
/
se agrega a las carreras y, a partir de ese momento, el bateador no puede anotar más carreras. El bateador se intercambia con el siguiente bateador que no haya bateado. LaHow Out
sección es una elección aleatoria de las posibles formas de salir:Bowled, LBW, Caught
Ejemplo para un wicket (esto es solo por claridad, no es así como se emite)
player a is on 4,6,2,6,4
player b is on 6,4,2,6,6
player c hasn't batted
player a is current batter
WICKET!!!
player a is on 4,6,2,6,4,/
player b in on 6,4,2,6,6
player c is on NOTHING
player c is current batter
Cada 6 bolas, los dos bateadores cambian; la masa actual se convierte en la masa "apagada" y la masa "apagada" se convierte en la masa actual
Si la Runs
sección está llena (30 bolas), la masa está fuera y la How Out
sección está configurada en Retired
. A /
no se coloca al final de la Runs
caja.
Reto real (sí, todas esas eran las reglas del juego)
Su desafío es generar una tabla completa (como el ejemplo al final), dada una lista de nombres. El contenido de la salida debe contener solo la tabla y / o los espacios en blanco iniciales o finales.
Reglas
- Las lagunas estándar no están permitidas
- Los 11 jugadores deberían tener algo en la
Runs
sección. - Solo 1 jugador puede ser
Not Out
. Todos los demás jugadores no retirados deben estar fuera de una elección de[Bowled, LBW, Caught]
- Los nombres pueden tener cualquier longitud entre 1 y 6 que coincida con la expresión regular
A-Za-z
- La línea final en la tabla debe ser la línea total (ver ejemplo)
- No tiene que alinear el texto de la tabla de ninguna manera, pero los separadores de fila y columna deben estar alineados.
Ejemplo
Input:
['Fred', 'Sonya', 'David', 'Ben', 'Cody', 'Hazel', 'Nina', 'Kim', 'Cath', 'Lena', 'Will']
Output:
+------+------------------------------+---------+-----+
| Name | Runs | How Out |Total|
+------+------------------------------+---------+-----+
|Fred |.662/ | Caught | 14 |
+------+------------------------------+---------+-----+
|Sonya |1164/ | Caught | 12 |
+------+------------------------------+---------+-----+
|David |/ | LBW | 0 |
+------+------------------------------+---------+-----+
|Ben |424/ | LBW | 10 |
+------+------------------------------+---------+-----+
|Cody |62/ | Bowled | 8 |
+------+------------------------------+---------+-----+
|Hazel |/ | LBW | 0 |
+------+------------------------------+---------+-----+
|Nina |161.6226166..44261442/ | Caught | 64 |
+------+------------------------------+---------+-----+
|Kim |11/ | Caught | 2 |
+------+------------------------------+---------+-----+
|Cath |6.21/ | LBW | 9 |
+------+------------------------------+---------+-----+
|Lena |/ | Bowled | 0 |
+------+------------------------------+---------+-----+
|Will |2 | Not Out | 2 |
+------+------------------------------+---------+-----+
| Total Runs | 121 |
+-----------------------------------------------+-----+