Con el texto a continuación, hay algunas palabras en el texto que se repiten varias veces en el texto. Use cualquier lenguaje de programación para escribir un código corto que comprima el texto para mostrarlo. O, en otras palabras, use la menor cantidad de bytes para mostrar el texto.
El texto es:
Peter Piper picked a peck of pickled peppers.
A peck of pickled peppers Peter Piper picked.
If Peter Piper picked a peck of pickled peppers,
Where's the peck of pickled peppers Peter Piper picked?
code-golf
string
kolmogorov-complexity
Monolica
fuente
fuente
Respuestas:
R , 106 bytes
Pruébalo en línea!
fuente
Gelatina ,
80 73 72 68 67 6157 bytesPruébalo en línea!
¿Cómo?
fuente
Chicle ,
7371 bytesPruébalo en línea!
fuente
gzip
el nivel de compresión más alto (-9
) más algunos afeitados de metadatos usandohead
ytail
, el byte 71 se genera usando zopfli, que inicialmente olvidé. Zopfli generalmente crea transmisiones DEFLATE más cortas.JavaScript (SpiderMonkey) , 114 bytes
Pruébalo en línea!
Yo diría que esta respuesta es de ovs , de todos modos, 19 bytes guardados.
Gracias Arnauld , ahorra 3 bytes.
fuente
Python 2 , 115 bytes
Pruébalo en línea!
Imprime múltiples cadenas separadas por comas para poner espacios entre ellas.
Python 3 , 115 bytes
Pruébalo en línea!
Python 3
translate
hace el trabajo pesado. El uso de caracteres no imprimibles con valor ASCII de un solo dígito debería ahorrar dos bytes.fuente
exit
guarda 1 byte para el programa Python 3.Jalea ,
64605857 bytesPruébalo en línea!
fuente
“...“...»
) para formar la mayoría de las cuatro líneas y luego intercalando (ż
) con las partes menos repetitivas (como',\nIf'
), nuevamente con listas de cadenas comprimidas; Puedes ver cómo funciona el mío en la descripción.Bash , 99
Pruébalo en línea!
fuente
V ,
9987 bytes-12 bytes: resulta que 2 sustituciones son más cortas, que es básicamente la misma que la solución de todos los demás (¿excepto Bubblegum?)
Pruébalo en línea!
fuente
Python 3 ,
120117116 bytesLas cadenas de formato fueron más cortas que la suma (129 bytes) y una unión (140 bytes) .
-3 gracias a Jo King, -1 gracias a Jonathan Allen
fuente
print
conexit
.Java (JDK) , 123 bytes
Pruébalo en línea!
fuente
Ramita, 105 bytes
Esto usa un reemplazo simple para llenar los vacíos.
El
replace()
filtro de Twig le permite definir los valores para reemplazar como las claves de un hash. Afortunadamente, también funciona con matrices, ya que tienen teclas numéricas.El
|raw
es necesario para evitar escapar, que se convirtióWhere's
enWhere's
.Puedes probarlo en https://twigfiddle.com/phqpts
Como esto se compila en PHP, el equivalente para PHP sería:
Que se puede acortar significativamente.
fuente
Ruby , 104 bytes
Pruébalo en línea!
fuente
/// , 86 bytes
Pruébalo en línea!
fuente
C (gcc) , 123 bytes
Pruébalo en línea!
fuente
Limpio , 166 bytes
Pruébalo en línea!
fuente
sed ,
101100 bytesPruébalo en línea!
-1 byte gracias a @DigitalTrauma
fuente
.*
con^
para guardar un bytejq, 110 caracteres
(Código de 106 caracteres + opciones de línea de comando de 4 caracteres)
Ejecución de muestra:
Pruébalo en línea!
fuente
SQL Server, 211
db <> violín
fuente
declare
; use un salto de línea real en la cadena en lugar dechar(10)
, de hecho, puede poner los saltos de línea directamente en laprint
instrucción y eliminarlos por@c
completo. Elija la variable más utilizada y@
Stax ,
6056 bytesEjecutar y depurarlo
fuente
"i am. Am i. If i am, Where's them i?"
No puedo parar de reir. Esto es oroT-SQL, 137 bytes
El último retorno antes del
FROM
es solo para legibilidad, el resto es parte de la concatenación de cadenas.Método diferente a la solución SQL de SeanC .
fuente
Kotlin , 150 bytes
Pruébalo en línea!
fuente
Retina 0.8.2 , 85 bytes
Pruébalo en línea! La misma idea que todos los demás.
fuente
Rojo , 116 bytes
Pruébalo en línea!
Explicación:
El trabajo lo realiza la función
rejoin
, que reduce y une un bloque de valores.fuente
J , 121 bytes
Pruébalo en línea!
fuente
PHP , 107 bytes
Pruébalo en línea!
fuente
<?=$a=...," a",$b=...,...
05AB1E ,
78767472 bytesPruébalo en línea.
Explicación:
Mira este 05AB1E consejo mío para entender por qué:
’0 a1.\nA10.\nIf0 a1,\nW€Î's €€10?’
es"0 a1.\nA10.\nIf0 a1,\nWhere's the10?"
.•1~¼ ¿•
es"pickled"
“±æ€‚ ÿÇì“
es"neck of ÿ pepper"
„íδŒ
es"peter pipe"
„r¾Ð
es"r picked"
fuente
Haskell , 132 bytes
Pruébalo en línea!
fuente
C # (.NET Core) ,
123118116 bytesPruébalo en línea!
Inspirado por la respuesta java de @Olivier Grégoire
5 bytes guardados por @sebbs
fuente
PHP , 102 bytes
Básicamente, simplemente cambie las palabras u oraciones repetidoras con números y luego aplique php-strtr
Pruébalo en línea!
O
PHP , 144 bytes
Pruébalo en línea!
fuente
Powershell,
99101 bytesfuente
the $b
hace que su envío sea más largo e inválido ( TIO ).[...]Peter Piper picked?
final al final de tu salida.