Hoy es el Día del tocino, que probablemente sea el motivo por el que el nombre para participar hoy es "Mmmm Bacon". ¡Qué mejor manera de celebrar el día del tocino con divertidas matrices 2d hechas de tocino! Una tira de tocino 1 por 1 está representada por esto:
-----
)===)
(===(
)===)
-----
Su objetivo aquí se le da dos coordenadas en una tupla, ( x
, y
), donde x
y y
son enteros positivos distintos de cero, debe crear el tocino y volver en algún formato (lista, matriz, cadena).
Entrada y salida:
Input: (2, 1)
Output:
----------
)===))===)
(===((===(
)===))===)
----------
Input: (1, 2)
Output:
-----
)===)
(===(
)===)
-----
)===)
(===(
)===)
-----
Input: (2, 2)
----------
)===))===)
(===((===(
)===))===)
----------
)===))===)
(===((===(
)===))===)
----------
Reglas:
Como puede ver con el segundo caso de prueba, si se apilan varias piezas de tocino juntas, solo una se
-----
separa con cada pieza de tocino encima y / o debajo. Eso significa que apilar tocino como este no es válido:----- )===) (===( )===) ----- ----- )===) (===( )===) -----
Las lagunas estándar están prohibidas
El código de trabajo imprescindible para los casos de prueba, ya los siguientes:
(4, 4)
,(1, 6)
,(5, 1)
,(2, 3)
,(3, 2)
Proporcionar un intérprete donde se puedan evaluar los casos de prueba anteriores.
Criterios ganadores:
¡El código más corto gana! ¡Feliz día del tocino para todos!
fuente
Respuestas:
V ,
28, 26, 24 bytesPruébalo en línea!
Explicación:
fuente
TI-Basic, 80 bytes
Este fue realmente bastante genio :)
fuente
Input
sin argumentos obtiene la entrada por defecto enX
yY
.Python 2.7, 74 bytes
Estoy seguro de que esto se podría jugar un poco más, pero esto es lo que se me ocurrió (la función de multiplicación de cuerdas de Python es útil):
Pruébalo aquí !
Sin disculpas con la explicación:
fuente
Mathematica, 74 bytes
Función sin nombre que toma dos argumentos enteros positivos y devuelve una cadena con líneas nuevas. Un enfoque estándar de Mathematica: construya una matriz 2D de cadenas usando un selector (mod 4) para alternar las cadenas en la dirección vertical, luego colapsarlas en una sola cadena.
fuente
Lote, 168 bytes
Por desgracia, no puedo escribir lo
@echo %s:==-%
contrario que eliminaría la necesidad de la segunda variable.fuente
&
...C,
9189 bytesfuente
05AB1E , 25 bytes
Código:
Explicación:
Utiliza la codificación CP-1252 . Pruébalo en línea!
fuente
05AB1E ,
3230 bytesGuardado 2 bytes gracias a Adnan .
Pruébalo en línea!
Explicación
fuente
")===)"
por…)==û
:)Python 2 , 70 bytes
¡Gracias a @xnor por guardar 4 bytes!
Pruébalo en línea!
fuente
[_::3]
sería más corto.2**n%5%3
qué ciclos[1, 2, 1, 0, 1, 2, 1, 0, ...]
. ¿Podría ser útil?Python 2, 59 bytes
Genera cada línea a
a+b*3+a
partir del carácter iniciala
y el carácter centralb
(que se calcula a partir dea
). Ela
ciclo de s'-()('
, mientras queb
es'-'
cuandoa
es'-'
, y de lo'='
contrario.67 bytes:
Genera cada línea a partir de su carácter exterior
a
y carácter centralb
comoa+b*3+a
, luego imprimew
copias de esto. Estos ciclos a través de azip
.fuente
JavaScript,
132129121 bytes-8 bytes gracias a @ user2428118
Esto probablemente se pueda jugar más al golf. Si tienes una sugerencia, déjala en los comentarios.
fuente
(x,y)=>eval('a=b=[d="-----",c=")===)","(===(",c,d];for(i=0;++i<y;)b=[...b,...a.slice(1)].map(v=>v.repeat(x)).join
_BACKTICK NEWLINE BACKTICK_;')
Lua, 132 bytes
Intento de cadena largo y literal. Pruébalo aquí .
fuente
JavaScript (ES6), 78
Prueba
fuente
GameMaker Language,
160139148 bytes133 bytesfuente
Jalea , 26 bytes
Este es un enlace diádico (función) que devuelve una matriz 2D.
Pruébalo en línea!
Cómo funciona
fuente
C,
159158153 bytesLlamar con:
fuente
C #, 160 bytes
Versión formateada:
Pruébalo en línea! (por alguna razón, este enlace da un error pero funciona de todos modos)
fuente
Dardo,
125117 bytesPruébalo aquí!
fuente
Dyalog APL, 55 bytes
Esta es la primera vez que uso Dyalog APL, así que estoy seguro de que este no es el mejor enfoque.
Explicación: Este es un enfoque bastante simple, para una cuadrícula de tocino de N × M, hago una matriz N × (4M) de las siguientes cuatro cadenas, repitiendo:
Entonces concateno la cuerda
-----
al principio.Aquí hay una explicación rápida del código:
fuente
Tcl , 91 bytes
Pruébalo en línea!
fuente
PowerShell , 64 bytes
Pruébalo en línea!
fuente