No, no el
^^vv<><>BA
tipo de huevos de Pascua, los verdaderos huevos de Pascua que pintamos.
Aquí hay un huevo (terriblemente dibujado).
__
/ \
/ \
| |
\____/
En pascua, los pintamos con patrones. Como estos:
__
/--\
/----\
|----|
\____/
__
/%%\
/%%%%\
|%%%%|
\____/
__
/~~\
/~~~~\
|~~~~|
\____/
El reto
Dado un carácter (ascii imprimible) para pintar el huevo, imprima el huevo pintado.
Ejemplos:
&:
__
/&&\
/&&&&\
|&&&&|
\____/
#:
__
/##\
/####\
|####|
\____/
Especificaciones
- Se permiten líneas / espacios finales.
Respuestas:
Cerebro-Flak ,
270268266 + 1 = 267 bytes+1 de la
-c
banderaPruébalo en línea!
Iba a escribir una explicación, pero primero tomé una siesta y olvidé cómo funciona todo este pensamiento. Tu invitado es tan bueno como el mío.
fuente
Python 2, 62 bytes
Súper sencillo. Pruébalo en línea .
-1 byte, gracias a @ mbomb007
fuente
Carbón ,
302616 bytesDos bytes guardados gracias a @Neil rellenando después de hacer la forma
Pruébalo en línea!
Explicación
El programa funciona creando primero la mitad derecha del huevo y luego reflejándolo para generar la mitad izquierda.
fuente
←_↘
puede ser igual↓_
pero en realidad se puede llenar después de reflexionar durante 16 bytes:__↗¹←↑¹↖²↓_‖M←¤S
.¤
Jalea ,
2422 bytesPruébalo en línea!
¿Cómo?
fuente
ṃ
para la explicación más larga de un solo byte.Sed, 43 caracteres
Ejecución de muestra:
fuente
JavaScript (ES6),
534947 bytesEstoy seguro de que puedo sacar un poco más de esto: tener que escapar del
\
s me molesta.s=c+c
asignación de variable dentro del primer conjunto de{}
.c+=c
lugar des=c+c
&s=s+s
, gracias en parte a Neil que detectó esta mejora al mismo tiempo que la estaba haciendo.¡Pinta el tuyo!
Mostrar fragmento de código
fuente
<pre><code>
s. Buen trabajo sin embargo.pre
.c+=c
?f=\n
porción para el recuento de bytes. Eso es solo para que se ejecute el fragmento.Alice ,
5352 bytes, no competidoraGracias a Leo por salvar indirectamente 1 byte.
Pruébalo en línea!
Desafortunadamente, tuve que arreglar un error con
y
(transliteración) para que esto funcionara, así que lo marqué como no competitivo.Explicación
La idea básica es crear una cadena del huevo pero con
~
un marcador de posición para dos copias de la entrada. Sin embargo, los otros caracteres de la entrada no son particularmente amigables para las cadenas de Alice, porque no pueden contener avances de línea, y todos/\_|
necesitarían escapar (porque se tratan como espejos y paredes). Entonces puedo guardar algunos bytes usando marcadores de posición para estos también, y luego transliterándolos. Los marcadores de posición para/\_|
son.[^{
, que son simplemente el carácter justo antes del que representan. Para el salto de línea que estoy usando}
.Ahora el código ... todo el programa se puede resolver en modo Ordinal ya que solo necesitamos el procesamiento de cadenas y ningún procesamiento de enteros. Además, no necesitamos ningún flujo de control condicional. Todo el programa se puede expresar linealmente. La estructura general del programa es la siguiente:
En dicho programa, la IP rebota hacia arriba y hacia abajo a través de la
...
sección, primero solo ejecuta la mitad de los caracteres. Luego, los dos/
al final mueven la IP hacia la derecha por una celda, de modo que en el camino de regreso ejecuta la otra mitad (nuevamente rebotando hacia arriba y hacia abajo) hasta que finalmente@
termina el programa. Entonces, si desarrollamos la divertida estructura en zigzag en el medio, el programa que estamos ejecutando realmente se ve así:Veamos esto:
fuente
PowerShell ,
504948 bytesPruébalo en línea!
Reemplazo directo de la cadena en una cadena literal. No hay mucho espacio para jugar al golf.
-1 byte gracias a HyperNeutrino; -1 byte gracias a wubs
fuente
Zanahoria , 34 bytes, no competitiva
No compite porque acabo de corregir un error con el intérprete en los espacios en blanco iniciales que no se muestran.
Pruébelo en línea aquí .
Primero, estamos en modo intercalación, donde cada personaje es empujado a la "pila". Y finalmente la "pila" se imprime como salida.
En modo caret,
#
empuja la entrada, por lo que las instancias de#
se reemplazan básicamente por la entrada (FYI#
es un programa cat de un byte).fuente
SOGL V0.12 ,
211816 bytesPruébalo aquí!
Todo el programa es el siguiente comprimido:
dónde
ŗ
se reemplaza con la entrada.13 bytes casi también funciona, pero hace cosas innecesarias con ciertas entradas.
fuente
@,ŗ -@ŗ
05AB1E ,
343332 bytesPruébalo en línea!
Explicación
fuente
•jÀňiXƒÐ[Z•6B6ôvy5ÝJ"_ |/\"¹«‡,
para 32, aunque completamente diferente. Esto me falsificada y me hizo pensar que podría utilizar palindromize ... Maldito el hecho de que())(
y/\\/
son palíndromos.Python 3.6 , 53 bytes
x
y devuelve una cadena..format()
: el{}
partes adjuntas de la cadena f son código para evaluar.Sin embargo, no puedo ver un intérprete en línea para Python 3.6.Pruébalo en repl.it (dice 3.5 pero es 3.6)
fuente
Retina 0.8.2 ,
4341 bytes-2 bytes gracias a Kevin Cruijssen
Pruébalo en línea!
fuente
Brainfuck -
257 bytes181 bytesGolfed: versión en vivo, haga clic aquí
Sin embargo, no soy un golfista profesional. Este es mi intento hasta donde puedo recordar: D
Salida:
Sin golf (+ comentarios):
fuente
05AB1E ,
322926 bytes (Gracias a Emigna / Adnan)Pruébalo en línea!
Versión de 29 bytes (más inteligente sin iteración necesaria debido a la codificación de nuevas líneas también):
05AB1E , 29 bytes (Emigna)
Pruébelo en línea 2!
Extensión de 26 bytes de la sugerencia de Emigna, usando S para separar los caracteres en una matriz, luego un [b] para interpolar cada dígito con la ubicación correspondiente en la matriz anterior. Esto es esencialmente una transliteración por elementos (inteligente).
05AB1E , 26 bytes (Adnan)
Pruébalo en línea 3!
fuente
Sè
- astuto astuto ...Admigna
, realmente no sabría el idioma sin sus dos ejemplos constantes.PHP, 51 bytes
PHP, 58 Bytes sin saltos de línea físicos
ejecuta esto con
-R
opción61 bytes
fuente
-R
no es un parámetro, es una opción.man php
llama parámetro : "También es posible procesar la entrada estándar línea por línea usando el parámetro -R o -F"BF,
142140 bytesEsto se divide en dos líneas para mayor claridad; la nueva línea no se cuenta.
Es bastante fácil escribir este tipo de cosas en BF, pero no es trivial cómo optimizar el orden de las celdas para minimizar el movimiento. Escribí un guión de fuerza bruta para probar todas las combinaciones y encontrar la más corta, y jugué un poco al golf para dar cuenta de una oportunidad de golf que no había incluido en la fuerza bruta.
fuente
brainfuck , 114 bytes
Pruébalo en línea!
He usado BF Crunch aquí para encontrar una forma más óptima de generar los personajes individuales.
fuente
C (gcc) ,
958885 bytesGracias a Albert por -7 bytes
Gracias también a ceilingcat -3 bytes
Pruébalo en línea!
fuente
*q
simplemente anidarlo directamente en tu bucle for para ahorrar 5 bytes.char*s;f(c){for(s=" __\n /11\\\n/1111\\\n|1111|\n\\____/\n";*s;putchar(*s^49?*s:c),s++);}
*s
dentro del argumento de declaración del bucle for:f(c){for(char*s=" __\n /11\\\n/1111\\\n|1111|\n\\____/\n";*s;putchar(*s^49?*s:c),s++);}
1
está49
en ASCII pero eso es 2 bytes, use algo con un valor de 0-9, por ejemplo, el carácter de tabulación `` es un valor ASCII9
.*s;f(c){for(s
lugar def(c){for(int*
SpecBAS - 70 bytes
?
es una forma abreviada dePRINT
comando, y el apóstrofe mueve el cursor a la siguiente línea.fuente
Röda , 46 bytes
Pruébalo en línea!
fuente
Python, 59 bytes
fuente
Lua, 66 bytes
((([[#Dado en el clavo]])))
fuente
Retina , 41 bytes
Pruébalo en línea!
fuente
Japt , 35 bytes
Pruébalo en línea!
Solución de 41 bytes:
Pruébalo en línea!
fuente
d
es un byte más corto.[R], 65 bytes
Bastante poco espectacular, encuentra uno más corto en R ... Es tu gsub básico
fuente
C ++ 208 bytes
En respuesta a los comentarios: esta es una nueva publicación completa.
fuente
C # , 56 bytes
Golfed
Sin golf
Legible sin golf
Código completo
Lanzamientos
56 bytes
- Solución inicial.Notas
Los resultados impresos dentro del enlace proporcionado no se verán como fingidos, debido a que la fuente utilizada no es monoespacio.
fuente
C (gcc) , 87 bytes
printf sin stdio.h causa advertencias pero no errores, permitiendo una compilación exitosa.
Explicación
Sentencia Printf que agrupa todo en una línea, formateando el carácter de decoración con% c.
Pruébalo en línea
fuente
C (gcc) , 84 bytes
Pruébalo en línea!
fuente