Bienvenido al bar piNapple, Melbourne. Todos los mejores golfistas de código están aquí, con sus computadoras portátiles, probando cócteles y programando cada vez más mal.
Siento una necesidad especial de enfatizar nuevamente el último punto. Cada vez más mal. El alcohol puede hacer cosas divertidas para la lógica de programación.
Entonces, algunos de los golfistas intentaban algunas quines anidadas en idiomas cada vez más exóticos. Alguien había dado el cuarto orden en INTERCAL. Entonces el flujo de alcohol se detuvo. Borracho, borró accidentalmente los algoritmos de lectura de códigos de barras de una computadora completamente diferente ... ¡que ni siquiera estaba conectada a ninguna red! (Niños - no INTERCAL. Por el bien de ustedes. Por el bien de su familia.)
Normalmente, esto no sería un gran problema. Pero, algún jugador de golf había diseñado el sistema hace años, y ninguno de los códigos de barras era estándar. Suponiendo que los 1 son líneas y los 0 son espacios, todos comienzan con 101 y terminan con 1001. Todo en el medio está codificado en ASCII de 7 bits.
El barkeep tiene un gran lector de código de barras elegante que devolverá una cadena de longitud arbitraria (aunque menos de 300 bits) de 1 y 0, a través de STDIN, argumento o archivo dependiendo de su programa. Y puede avanzar o retroceder según la forma en que se sostiene la botella. Su programa debe devolver la cadena desde el medio del código de barras, a través de STOUT o archivo.
Desafortunadamente, no gastó tanto en su almacenamiento, por lo que se elegirá el programa con la fuente más corta y ganará bebidas gratis y tutoriales de programación de borrachos de los otros golfistas.
¡Buena suerte!
101...1001
o1001...101
e inversa en el último caso, luego empaque el centro en bytes.Respuestas:
GolfScript, 30 caracteres
La entrada se proporciona en STDIN. Ejemplo :
fuente
J - 35 bytes
Explicación que viene más tarde :).
fuente
Pyth , 21
Explicación:
Tenga en cuenta que si bien la pregunta es más antigua que el idioma, la existencia de la pregunta no influyó en el diseño del idioma de ninguna manera, porque no he visto la pregunta antes de hoy.
Todavía las reglas son reglas, así que lo estoy haciendo CW.
fuente
AWK, 116 bytes
Sé que esta pregunta no ha visto mucho amor, pero tenía curiosidad por ver y la
AWK
solución. Esto no es tan inteligente, pero parece funcionar y no veo áreas obvias para el golf. Originalmente invertí la cadena cuando era necesario, pero eso agregó más bytes que simplemente ajustar la lógica de incremento para retroceder.fuente