Dado un diccionario de palabras de 4 letras que no tienen caracteres repetidos ( de esta lista de palabras ), debe elegir UNA de esas palabras y emitir esa palabra específica utilizando el siguiente diccionario de letras mayúsculas:
.----------------. .----------------. .----------------. .----------------.
| .--------------. || .--------------. || .--------------. || .--------------. |
| | __ | || | ______ | || | ______ | || | ________ | |
| | / \ | || | |_ _ \ | || | .' ___ | | || | |_ ___ '. | |
| | / /\ \ | || | | |_) | | || | / .' \_| | || | | | '. \ | |
| | / ____ \ | || | | __'. | || | | | | || | | | | | | |
| | _/ / \ \_ | || | _| |__) | | || | \ '.___.'\ | || | _| |___.' / | |
| ||____| |____|| || | |_______/ | || | '._____.' | || | |________.' | |
| | | || | | || | | || | | |
| '--------------' || '--------------' || '--------------' || '--------------' |
'----------------' '----------------' '----------------' '----------------'
.----------------. .----------------. .----------------. .----------------.
| .--------------. || .--------------. || .--------------. || .--------------. |
| | _________ | || | _________ | || | ______ | || | ____ ____ | |
| | |_ ___ | | || | |_ ___ | | || | .' ___ | | || | |_ || _| | |
| | | |_ \_| | || | | |_ \_| | || | / .' \_| | || | | |__| | | |
| | | _| _ | || | | _| | || | | | ____ | || | | __ | | |
| | _| |___/ | | || | _| |_ | || | \ '.___] _| | || | _| | | |_ | |
| | |_________| | || | |_____| | || | '._____.' | || | |____||____| | |
| | | || | | || | | || | | |
| '--------------' || '--------------' || '--------------' || '--------------' |
'----------------' '----------------' '----------------' '----------------'
.----------------. .----------------. .----------------. .----------------.
| .--------------. || .--------------. || .--------------. || .--------------. |
| | _____ | || | _____ | || | ___ ____ | || | _____ | |
| | |_ _| | || | |_ _| | || | |_ ||_ _| | || | |_ _| | |
| | | | | || | | | | || | | |_/ / | || | | | | |
| | | | | || | _ | | | || | | __'. | || | | | _ | |
| | _| |_ | || | | |_' | | || | _| | \ \_ | || | _| |__/ | | |
| | |_____| | || | '.___.' | || | |____||____| | || | |________| | |
| | | || | | || | | || | | |
| '--------------' || '--------------' || '--------------' || '--------------' |
'----------------' '----------------' '----------------' '----------------'
.----------------. .-----------------. .----------------. .----------------.
| .--------------. || .--------------. || .--------------. || .--------------. |
| | ____ ____ | || | ____ _____ | || | ____ | || | ______ | |
| ||_ \ / _|| || ||_ \|_ _| | || | .' '. | || | |_ __ \ | |
| | | \/ | | || | | \ | | | || | / .--. \ | || | | |__) | | |
| | | |\ /| | | || | | |\ \| | | || | | | | | | || | | ___/ | |
| | _| |_\/_| |_ | || | _| |_\ |_ | || | \ '--' / | || | _| |_ | |
| ||_____||_____|| || ||_____|\____| | || | '.____.' | || | |_____| | |
| | | || | | || | | || | | |
| '--------------' || '--------------' || '--------------' || '--------------' |
'----------------' '----------------' '----------------' '----------------'
.----------------. .----------------. .----------------. .----------------.
| .--------------. || .--------------. || .--------------. || .--------------. |
| | ___ | || | _______ | || | _______ | || | _________ | |
| | .' '. | || | |_ __ \ | || | / ___ | | || | | _ _ | | |
| | / .-. \ | || | | |__) | | || | | (__ \_| | || | |_/ | | \_| | |
| | | | | | | || | | __ / | || | '.___'-. | || | | | | |
| | \ '-' \_ | || | _| | \ \_ | || | |'\____) | | || | _| |_ | |
| | '.___.\__| | || | |____| |___| | || | |_______.' | || | |_____| | |
| | | || | | || | | || | | |
| '--------------' || '--------------' || '--------------' || '--------------' |
'----------------' '----------------' '----------------' '----------------'
.----------------. .----------------. .----------------. .----------------.
| .--------------. || .--------------. || .--------------. || .--------------. |
| | _____ _____ | || | ____ ____ | || | _____ _____ | || | ____ ____ | |
| ||_ _||_ _|| || ||_ _| |_ _| | || ||_ _||_ _|| || | |_ _||_ _| | |
| | | | | | | || | \ \ / / | || | | | /\ | | | || | \ \ / / | |
| | | ' ' | | || | \ \ / / | || | | |/ \| | | || | > '' < | |
| | \ '--' / | || | \ ' / | || | | /\ | | || | _/ /''\ \_ | |
| | '.__.' | || | \_/ | || | |__/ \__| | || | |____||____| | |
| | | || | | || | | || | | |
| '--------------' || '--------------' || '--------------' || '--------------' |
'----------------' '----------------' '----------------' '----------------'
.----------------. .----------------.
| .--------------. || .--------------. |
| | ____ ____ | || | ________ | |
| | |_ _||_ _| | || | | __ _| | |
| | \ \ / / | || | |_/ / / | |
| | \ \/ / | || | .'.' _ | |
| | _| |_ | || | _/ /__/ | | |
| | |______| | || | |________| | |
| | | || | | |
| '--------------' || '--------------' |
'----------------' '----------------'
Dependiendo de la edad que tenga, es posible que le hayan dado una inyección de nostalgia de estas letras en bloque. Por otra parte, más allá de cierto punto, puede tener la nostalgia de ver a sus hijos deletrear estas palabras basadas en bloques por su cuenta. Originarios de 1693 , los bloques alfabéticos eran una pieza educativa bastante común de la familia nuclear y más allá. Vamos a recrear esta nostalgia deletreando una palabra de esta lista de palabras .
En otras palabras, este desafío es elegir cuatro letras de la definición del espacio de teclas y hacerlas "apiladas" en un orden especificado por el diccionario. Notarás que el diccionario omite palabras de 4 letras moon
como cuando repiten letras, y son básicamente palabras engañosas.
Aquí está la estructura de bloques en sí sin ningún carácter dentro:
.----------------.
| .--------------. | # Tops are periods.
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| '--------------' | # Bottoms are apostrophe's.
'----------------'
Reglas
- Caracteres dentro de los bloques sólo se utilizan:
|/\_'.]-><
. - Los números no existen, ni los símbolos; solo las letras en la lista de palabras.
- Este es un problema de complejidad kolmogorov después de haber elegido su palabra, debe generar cada bloque exactamente como se muestra.
- Puede generarlos en cualquier formato que desee, vertical, horizontal, apilados en un cuadrado; sin embargo, debe leer de arriba a abajo, de izquierda a derecha. Además, cada bloque debe mostrarse sin ser alterado, en un formato coherente. Esto es para dar más libertad para guardar bytes y permitir una estructura de salida diversa, muy similar a cómo sería cuando se juega con bloques.
- El principal elemento competitivo de este desafío es la optimización de la compresión y, al igual que mi otro problema , también tiene en cuenta su capacidad para resolver problemas dado el margen de elección aparentemente "estética".
Ejemplos
.----------------. .----------------. .----------------. .----------------.
| .--------------. || .--------------. || .--------------. || .--------------. |
| | _________ | || | ____ ____ | || | ______ | || | _________ | |
| | | _ _ | | || | |_ _||_ _| | || | |_ __ \ | || | |_ ___ | | |
| | |_/ | | \_| | || | \ \ / / | || | | |__) | | || | | |_ \_| | |
| | | | | || | \ \/ / | || | | ___/ | || | | _| _ | |
| | _| |_ | || | _| |_ | || | _| |_ | || | _| |___/ | | |
| | |_____| | || | |______| | || | |_____| | || | |_________| | |
| | | || | | || | | || | | |
| '--------------' || '--------------' || '--------------' || '--------------' |
'----------------' '----------------' '----------------' '----------------'
Tiene la misma validez que:
.----------------.
| .--------------. |
| | _________ | |
| | | _ _ | | |
| | |_/ | | \_| | |
| | | | | |
| | _| |_ | |
| | |_____| | |
| | | |
| '--------------' |
'----------------'
.----------------.
| .--------------. |
| | ____ ____ | |
| | |_ _||_ _| | |
| | \ \ / / | |
| | \ \/ / | |
| | _| |_ | |
| | |______| | |
| | | |
| '--------------' |
'----------------'
.----------------.
| .--------------. |
| | ______ | |
| | |_ __ \ | |
| | | |__) | | |
| | | ___/ | |
| | _| |_ | |
| | |_____| | |
| | | |
| '--------------' |
'----------------'
.----------------.
| .--------------. |
| | _________ | |
| | |_ ___ | | |
| | | |_ \_| | |
| | | _| _ | |
| | _| |___/ | | |
| | |_________| | |
| | | |
| '--------------' |
'----------------'
Que es tan válido como:
.----------------.
| .--------------. |
| | _________ | |
| | | _ _ | | |
| | |_/ | | \_| | |
| | | | | |
| | _| |_ | |
| | |_____| | |
| | | |
| '--------------' |
'----------------'
.----------------. .----------------. .----------------.
| .--------------. || .--------------. || .--------------. |
| | ____ ____ | || | ______ | || | _________ | |
| | |_ _||_ _| | || | |_ __ \ | || | |_ ___ | | |
| | \ \ / / | || | | |__) | | || | | |_ \_| | |
| | \ \/ / | || | | ___/ | || | | _| _ | |
| | _| |_ | || | _| |_ | || | _| |___/ | | |
| | |______| | || | |_____| | || | |_________| | |
| | | || | | || | | |
| '--------------' || '--------------' || '--------------' |
'----------------' '----------------' '----------------'
Esto también funciona:
.----------------. .----------------.
| .--------------. || .--------------. |
| | _________ | || | ____ ____ | |
| | | _ _ | | || | |_ _||_ _| | |
| | |_/ | | \_| | || | \ \ / / | |
| | | | | || | \ \/ / | |
| | _| |_ | || | _| |_ | |
| | |_____| | || | |______| | |
| | | || | | |
| '--------------' || '--------------' |
'----------------' '----------------'
.----------------. .----------------.
| .--------------. || .--------------. |
| | ______ | || | _________ | |
| | |_ __ \ | || | |_ ___ | | |
| | | |__) | | || | | |_ \_| | |
| | | ___/ | || | | _| _ | |
| | _| |_ | || | _| |___/ | | |
| | |_____| | || | |_________| | |
| | | || | | |
| '--------------' || '--------------' |
'----------------' '----------------'
Incluso cosas que parecen costarle bytes:
.----------------. .----------------.
| .--------------. || .--------------. |
| | _________ | || | ____ ____ | |
| | | _ _ | | || | |_ _||_ _| | |
| | |_/ | | \_| | || | \ \ / / | |
| | | | | || | \ \/ / | |
| | _| |_ | || | _| |_ | |
| | |_____| | || | |______| | |
| | | || | | |
| '--------------' || '--------------' |
'----------------' '----------------'
.----------------. .----------------.
| .--------------. || .--------------. |
| | ______ | || | _________ | |
| | |_ __ \ | || | |_ ___ | | |
| | | |__) | | || | | |_ \_| | |
| | | ___/ | || | | _| _ | |
| | _| |_ | || | _| |___/ | | |
| | |_____| | || | |_________| | |
| | | || | | |
| '--------------' || '--------------' |
'----------------' '----------------'
Sin embargo, puedes apilar los bloques para ahorrarte bytes, es un ganador en mi libro.
Este es el código de golf , el menor recuento de bytes gana.
fuente
hide
owaxy
.Respuestas:
De carbón ,
180164162159158155 bytesPruébalo en línea! Editar: guardado
1618 bytes dibujando manualmente las letrasWAY
; desafortunadamenteX
resulta demasiado difícil de dibujar, por lo que todavía se imprime usando un literal de cadena. Se guardaron otros 3 bytes al cambiar deWAXY
aAHOY
. Guarde otro byte cambiando aMAYO
porque puedo usar laχ
variable predefinida para 10. Guarde otros 3 bytes repitiendo la copia del borde en un bucle. Explicación:Lista completa de mitades a la derecha de la letra:
Si
O
,W
,X
oY
es la última letra, entonces el último byte se puede quitar. Por otro lado,M
,W
y elY
costo de 2 bytes como una primera carta o un byte como la carta despuésO
;H
cuesta un byte como primera letra. Con el recuento de bytes anterior, son posibles las siguientes palabras:fuente
.
sys'
de losO
que son los verdaderos asesinos (estaría comprimiendo como un número base 6 en lugar de uno base 4).X
tiene sus propios problemas.PHP, 362 bytes
LECHE
Pruébalo en línea!
PHP, 258 bytes solo comprimido
Pruébalo en línea!
PHP, 323 Bytes El código anterior se comprime con el uso de eval
Pruébalo en línea!
fuente
Jalea ,
119114 bytesWHAM
Pruébalo en línea!
¿Cómo?
La idea general es elegir letras que tengan simetría izquierda-derecha con una traducción mínima de caracteres para (a) reducir la base en la que se pueden codificar los datos y (b) mantener pequeña la función de "reflexión".
La letra
H
tiene simetría izquierda-derecha sin necesidad de traducción. Las letrasW
yA
también tienen simetría izquierda-derecha si la/
s de la izquierda se convierte en\
s de la derecha. Desafortunadamente, no hay cuatro letras de ese tipo (con los mismos lados con las mismas pendientes de barras).Las letras como
O
introducen más caracteres, lo que aumenta la base necesaria para el cifrado, lo que genera un número mucho mayor y, por lo tanto, más bytes.M
, sin embargo, solo introduce la otra barra inclinada, si las medias filas para elM
se almacenan en reversa y con las barras incorrectas, la base se mantiene en cuatro y una inversión posterior al descifrado y posterior a la reflexión de solo estas filas vuelve a poner todo en orden ( Este es elU4¦
enlace 1). Esto también significa que la traducción de caracteres solo tiene que atender al\
devenir/
y no al revés también (es decir, enṚ“\/”y;
lugar deṚ“\/“/\”y;
).fuente
M
los s/
son de la misma manera que losY
s?Javascript
433416 caracteresSí, no es muy impresionante. Pero puse tanto trabajo y no veo ninguna manera fácil de mejorar mucho :)
_ => {r = (s, x) => s.repeat (x)
No estoy seguro de que mis letras estén perfectamente bien formadas:
El resultado se guarda en la
a
variable.fuente
Chicle , 119 bytes
Pruébalo en línea!
VIDA. Aquí hay una lista de todas las letras en un formato más legible que utilicé para probar cada palabra.
fuente