"Una imagen vale más que mil palabras", dice el viejo dicho. La palabra promedio tiene aproximadamente cuatro caracteres, por lo que una imagen transmite 4kB de información. Pero, ¿cuánta entropía , en lugar de información, puede transmitir una imagen?
Su tarea es generar una imagen, exactamente de 4,000 bytes de tamaño, con la mayor entropía posible. Puede usar cualquier idioma, biblioteca o formato de imagen que elija, y puede enviarlos a la consola o a un archivo siempre que cargue su imagen aquí.
Puntuación
Su puntaje es la relación de compresión (4000 ÷ tamaño comprimido) cuando su imagen se comprime con GNU tar
versión 1.28 y gzip
versión 1.6, utilizando el algoritmo DEFLATE y la configuración predeterminada, específicamente, el comando tar -czvf out.tar.gz image
. La relación de compresión más pequeña gana.
gzip -n image
no puede producir un archivo de más de 4023 bytes con una entrada de 4000 bytes. Necesita 10 bytes para el encabezado, 8 para el pie de página, 1 para el encabezado y relleno del bloque DEFLATE, y 4 para el tamaño del bloque DEFLATE; el resto solo se almacena como bytes sin comprimir. La mayoría de los archivos compuestos por bits aleatorios se almacenan sin comprimir, como deberían ser.
tar
incluye metadatos, incluido mtime, en los archivos de salida de forma predeterminada. Esto afecta el tamaño final del archivo comprimido: algunas veces se comprimen mejor que otras. Cambiar el comando agzip -n image
haría que el tamaño de salida sea determinista independientemente de mtime (y el nombre del archivo de entrada).