Para este desafío, imprimirá las coordenadas y el color de cada pieza al comienzo de un juego de damas.
Ingrese x e y (separados por comas) para cada cuadrado (indexado 0-7) en un tablero de ajedrez, seguido de una "r" o "b" (para rojo o negro) donde la parte superior del tablero (más cerca de y = 0 ) es rojo y la parte inferior es negra. Se requieren líneas nuevas entre las piezas y no se necesitan espacios.
Este es el código de golf, por lo que las respuestas se puntúan en bytes, con menos bytes mejor.
Las nuevas líneas finales están permitidas, pero no son necesarias, y el orden debe ser exactamente el siguiente.
Salida deseada:
0,0r
0,2r
0,4r
0,6r
1,1r
1,3r
1,5r
1,7r
2,0r
2,2r
2,4r
2,6r
5,1b
5,3b
5,5b
5,7b
6,0b
6,2b
6,4b
6,6b
7,1b
7,3b
7,5b
7,7b
x=3
yx=4
?0,0r;0,2r;0,4r;0,6r;1,1r;1,3r;1,5r;1,7r;2,0r;2,2r;2,4r;2,6r;5,1b;5,3b;5,5b;5,7b;6,0b;6,2b;6,4b;6,6b;7,1b;7,3b;7,5b;7,7b
?Respuestas:
05AB1E , 26 bytes
Pruébalo en línea!
Explicación
fuente
[0,1,2,5,6,7]
podría ser empujado en menos bytes ... pero todo lo que podía pensar era,7Ý34SK
así que supongo que no.JavaScript (ES6), 66 bytes
Incluye una nueva línea final.
Manifestación
Mostrar fragmento de código
fuente
Perl 5 , 53 bytes
Pruébalo en línea!
fuente
C (gcc) ,
83817978 bytesx/4+2*(x/12)
ax/4+x/12*2
.x%8*2%8
ax*2%8
.Pruébalo en línea!
fuente
x%8*2%8
puede serx*2%8
Python 2 ,
747367 bytesPruébalo en línea!
fuente
in(...):
->in ...:
.Java 8,
10296959391 bytesPuerto de la respuesta C de @JonathanFrech , después de lo cual jugué 5 bytes yo mismo.
Pruébalo aquí
Explicación:
fuente
Bash , 59 bytes
No es el más corto, pero sí divertido:
Pruébalo en línea!
fuente
APL (Dyalog Classic) , 38 bytes
Pruébalo en línea!
fuente
Jalea , 35 bytes
Pruébalo en línea!
Programa completo sin argumentos
Explicación
fuente
Java 8, 97 bytes
fuente
JavaScript (ES6), 64 bytes
Esto parece lo suficientemente diferente de @ Arnauld para justificar la publicación:
Explicación:
Retazo:
Mostrar fragmento de código
fuente
Python 2 , 63 bytes
Pruébalo en línea!
fuente
APL (Dyalog) ,
4544 bytes *-1 gracias a ngn.
Función niládica que supone una indexación basada en 0 (
⎕IO←0
) que es predeterminada en muchos sistemas. Imprime en STDOUT.Pruébalo en línea!
(
...),¨¨'rb'
agregue "r" a cada uno del primer grupo de elementos y "b" a cada uno de los segundos:⍳8
cero a ocho2|
resto de división cuando se reduce a la mitad∘.+⍨
mesa plus con sí mismo en ambos ejes⍸
índices de valores verdaderos⍕¨
formatee cada uno (se convierte en cadenas con el patrónd d
donde cada unod
es un dígito)⊂
adjuntar (para que podamos reutilizarlo para cada ...)8 ¯8↑¨
toma los primeros nueve y los últimos nueveahora tenemos dos listas de
d d
cadenas,/
reducción de catenation (combine las dos listas)⊃
revelar (porque la reducción redujo el rango de 1 a 0)' '⎕R','
PCRE R eplace espacios con comas↑
mezclar (todas las listas en una sola matriz)* En Dyalog Classic, contando
⍸
como⎕U2378
.fuente
~2|∘.+⍨⍳8
podría ser∘.=⍨2|⍳8
2⍴⊂'Thanks'
Chicle , 59 bytes
Pruébalo en línea!
fuente
Pyth ,
373635 bytesIsaac no estaría orgulloso
Explicación:
Esto usa un patrón simple que corté un poco. Como sigue:
Si el
X
coord es par, use los números pares0, 2, 4, 6
. De lo contrario,1, 3, 5, 7
paraY
.Si el
X
coord es menor que 5, el color (r
ob
) esr
. De lo contrario, lo esb
.Pruébalo en línea!
editar : durante la noche obtuvo +40 rep en 3 respuestas diferentes w00t
fuente
SOGL V0.12 , 31 bytes
Pruébalo aquí!
fuente
Javascript (89 bytes):
Legible:
Pruébalo en línea!
fuente
Jalea , 27 bytes
Un programa completo que imprime la salida requerida.
Pruébalo en línea!
Cómo
fuente
Ruby ,
6360 bytesLa magia de Bitmask salva el byte.
Pruébalo en línea!
fuente
PowerShell , 63 bytes
Pruébalo en línea!
Se repite
0,1,2,5,6,7
y cada iteración se establece$i
en el número actual. Luego se repite0,2,4,6
. En cada bucle interno, construimos una cadena que comienza$i,
luego concatenada con el número actual de nuestro bucle interno más si$i
es par o impar (lo que nos da0,2,4,6
una vez y1,3,5,7
la otra vez), luego concatenada conr
ed ob
falta en función de si$i
es-g
real o no -oe
bien- a5
. Esas cadenas se dejan en la tubería y lo implícitoWrite-Output
en la finalización del programa nos da nuevas líneas de forma gratuita.fuente
J ,
48 44 40 3731 bytesPruébalo en línea!
Cómo funciona
fuente
C # (.NET Core) , 96 bytes
Pruébalo en línea!
Esencialmente solo un puerto a C # de la respuesta de @ JonathanFrech . No podría encontrar una mejor manera de hacer los cálculos.
fuente