El juego de damas chinas se juega en un tablero con espacios en forma de estrella de seis puntas:
Podemos crear una representación ASCII-art de este tablero, utilizando .
espacios vacíos y las letras GYORPB
para las seis ubicaciones iniciales de color:
G
G G
G G G
G G G G
B B B B . . . . . Y Y Y Y
B B B . . . . . . Y Y Y
B B . . . . . . . Y Y
B . . . . . . . . Y
. . . . . . . . .
P . . . . . . . . O
P P . . . . . . . O O
P P P . . . . . . O O O
P P P P . . . . . O O O O
R R R R
R R R
R R
R
Para hacerlo más interesante, también podemos cambiar el tamaño. Mediremos el tamaño de un tablero por la longitud lateral de sus ubicaciones de inicio triangulares: el tablero de arriba es de tamaño 4.
Como es realmente difícil escribir todo eso a mano, ¡escriba un programa (o función) para hacerlo!
Detalles
Su código debe tener un número entero positivo que represente el tamaño de la placa, a través de STDIN, ARGV o argumento de función. Envíe el patrón de tablero de ajedrez a STDOUT (puede devolverlo alternativamente como una cadena si su envío es una función).
La salida debe
- no tener espacios finales en absoluto, o
- tener suficientes espacios finales para completar el patrón en un rectángulo perfecto de ancho 6 * N + 1.
La salida puede tener opcionalmente una nueva línea final. No se permite ningún otro espacio en blanco adicional (inicial, final).
Ejemplos
Talla 1:
G
B . . Y
. . .
P . . O
R
Talla 2:
G
G G
B B . . . Y Y
B . . . . Y
. . . . .
P . . . . O
P P . . . O O
R R
R
Talla 4:
G
G G
G G G
G G G G
B B B B . . . . . Y Y Y Y
B B B . . . . . . Y Y Y
B B . . . . . . . Y Y
B . . . . . . . . Y
. . . . . . . . .
P . . . . . . . . O
P P . . . . . . . O O
P P P . . . . . . O O O
P P P P . . . . . O O O O
R R R R
R R R
R R
R
Tanteo
Esto es code-golf : gana el código más corto en bytes.