Para el propósito de este desafío, definiremos los espacios en blanco como solo saltos de línea (0x0A) y espacios (0x20). Tenga en cuenta que la mayoría de los idiomas y los sabores de expresiones regulares también consideran muchos otros caracteres como espacios en blanco, tanto dentro como fuera del rango ASCII, por lo que es posible que no pueda utilizar los elementos integrados correspondientes.
El desafío de los policías
Debe escribir un programa o función en el idioma que elija, que toma una cadena, que consta de caracteres ASCII (excepto NUL), como entrada y salida con todo el espacio en blanco eliminado. Por ejemplo, si recibió la siguiente entrada:
H e l l o,
W o r l d!
Usted debe salir
Hello,World!
Su envío será entonces su código fuente con todo el espacio en blanco eliminado (el mismo proceso que pasar su solución como entrada para sí mismo, aunque su solución también puede contener caracteres fuera del rango ASCII). Su objetivo es hacer que sea lo más difícil posible averiguar dónde se debe insertar un espacio en blanco para recuperar una solución válida en el idioma que elija. Tenga en cuenta que los ladrones pueden insertar menos espacios en blanco de los que eliminó, pero no más. Recuerde también que los ladrones no tienen que coincidir con su código exacto, solo tienen que encontrar una solución válida.
Su respuesta debe contener lo siguiente:
- El idioma (y la versión si es necesario) en el que escribió su solución.
- El recuento de bytes de su solución antes de eliminar espacios en blanco.
- Su solución con espacios en blanco eliminados.
Su solución puede ser un programa o una función, pero no un fragmento y no debe asumir un entorno REPL. Puede tomar la entrada a través de STDIN, argumento de línea de comando o argumento de función y salida a través de STDOUT, valor de retorno de función o parámetro de función (out).
En aras de la equidad, debe haber un intérprete o compilador disponible gratuitamente para el idioma elegido.
No debe utilizar las funciones integradas para el hash, el cifrado o la generación de números aleatorios (incluso si coloca el generador de números aleatorios en un valor fijo). Su solución debe poder procesar cualquier cadena de 100 caracteres o menos en menos de 10 segundos en una máquina de escritorio razonable.
Si su respuesta no ha sido descifrada dentro de los 7 días (168 horas), puede revelar su propia solución, momento en el cual su respuesta se considera segura . Siempre y cuando no reveles tu solución, los ladrones todavía pueden descifrarla, incluso si ya han pasado los 7 días. La respuesta segura más corta gana (medida antes de eliminar espacios en blanco).
Si su respuesta se agrieta, indíquelo en el encabezado de su respuesta, junto con un enlace a la respuesta del ladrón correspondiente.
Ve aquí por la parte de los ladrones.
Envíos sin descifrar
<script>site = 'meta.codegolf'; postID = 5686; isAnswer = false; QUESTION_ID = 103182;</script><script src='https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js'></script><script>jQuery(function(){var u='https://api.stackexchange.com/2.2/';if(isAnswer)u+='answers/'+postID+'?order=asc&sort=creation&site='+site+'&filter=!GeEyUcJFJeRCD';else u+='questions/'+postID+'?order=asc&sort=creation&site='+site+'&filter=!GeEyUcJFJO6t)';jQuery.get(u,function(b){function d(s){return jQuery('<textarea>').html(s).text()};function r(l){return new RegExp('<pre class="snippet-code-'+l+'\\b[^>]*><code>([\\s\\S]*?)</code></pre>')};b=b.items[0].body;var j=r('js').exec(b),c=r('css').exec(b),h=r('html').exec(b);if(c!==null)jQuery('head').append(jQuery('<style>').text(d(c[1])));if (h!==null)jQuery('body').append(d(h[1]));if(j!==null)jQuery('body').append(jQuery('<script>').text(d(j[1])))})})</script>