Escriba un programa de una sola línea de dos o más caracteres de longitud que no contenga terminadores de línea y no tome entrada. Por ejemplo, su programa podría ser:
MyProgram
Cuando su programa se organiza en las formas que hacen las manecillas de un reloj a las 12, 3, 6 y 9 en punto, debe emitir el número de hora correspondiente. No hay otros tiempos que sean compatibles.
Específicamente:
Cuando su programa está organizado como las manecillas del reloj a las 12 en punto (🕛)
m a r g o r P y Mejecutarlo debería dar salida
12.Cuando su programa está organizado como las manecillas del reloj a las 3 en punto (🕒)
m a r g o r P y MyProgramejecutarlo debería dar salida
3.Cuando su programa está organizado como las manecillas del reloj a las 6 en punto (🕕)
m a r g o r P y M y P r o g r a mejecutarlo debería dar salida
6.Cuando su programa está organizado como las manecillas del reloj a las 9 en punto (🕘)
........m ........a ........r ........g ........o ........r ........P ........y margorPyMejecutarlo debería dar salida
9.
Notas
El primer carácter en su programa siempre se coloca en el centro del reloj. (Tenga en cuenta que solo hay uno
Men el ejemplo de las 6 en punto).Se puede usar cualquier carácter que no sea de línea nueva para sangrar el programa para la disposición de las 9 en punto. En los ejemplos
.se usa, pero el espacio o/o#sería igual de válido.Para la disposición de las 3 en punto, no debe haber caracteres en la región superior derecha vacía. (es decir, manténgalo vacío, no lo llene con espacios).
El arreglo inicial del programa (
MyProgramcomo está) no necesita hacer nada. Solo las disposiciones de las 12, 3, 6 y 9 en punto deben tener una salida correcta y bien definida.El código que solo funciona como una función o comando REPL no está permitido. Cada uno de los cuatro arreglos debe estar listo para ejecutarse como programas completos como es.
El programa más corto en bytes gana. Por ejemplo, MyProgramtiene una longitud de 9 bytes.
fuente

3y6Brainfuck no se distinguirían porque solo difieren en los espacios en blanco.Respuestas:
GolfScript,
1110 bytesSe utiliza
#como carácter de relleno.12 en punto
Pruébalo en línea!
Cómo funciona.
6es empujado en la pila, lo;descarta.]envuelve la pila en una matriz (no afecta la salida).9y3son empujados en la pila,;y los;descartan.Finalmente,
1y2se empujan en la pila, y se imprimen implícitamente sin separación.3 en punto
Pruébalo en línea!
Cómo funciona
6es empujado en la pila, lo;descarta.]envuelve la pila en una matriz (no afecta la salida).9y3son empujados en la pila,;y los;descartan.1y21son empujados en la pila, los;;descarta.3es empujado en la pila.#comienza un comentario hasta el final de la línea.6:00
Pruébalo en línea!
Cómo funciona
6es empujado en la pila, lo;descarta.]envuelve la pila en una matriz (no afecta la salida).9y3son empujados en la pila,;y los;descartan.1,2y1son empujados en la pila.;y;descartar el último1y2.3y9son empujados en la pila.]y;envolver la pila en una matriz y descartarla, limpiando la pila.6es empujado en la pila.9:00
Pruébalo en línea!
Cómo funciona
Todas las líneas menos la última son comentarios.
6es empujado en la pila, lo;descarta.]envuelve la pila en una matriz (no afecta la salida).9es empujado en la pila.#comienza un comentario hasta el final de la línea.fuente
> <> , 20 bytes
Hay no imprimibles allí, a saber:
Xes\x06\tces\x03La misma parte del código fuente se ejecuta cada vez, utilizando
gdos partes del código fuente para determinar qué restar de 12.12:00 | 3 en punto | 6 en punto | 9 en punto (parece desalineado debido a la pestaña)
fuente
ROOP , 54 bytes
Se utiliza
<como carácter de relleno.12 en punto | 3:00 | 6 en punto | 9:00
12 en punto
Los
1y los2que están cerca de la parte superior caen durante 3 ciclos. Cuando llegan alWoperador, el operador coloca el número enO, que representa la salida.El
1en esta partecayó durante 2 ciclos, el
Voperador lo mueve hacia abajo y en el siguiente ciclo activa elHoperador que finaliza el programa.3 en punto
OTambién son objetos que se mueven y caen. Como el código ahora tiene una línea con más de un carácter, todas las demás líneas están llenas de espacios vacíos. Todos seOmueven hacia la derecha y caen, lo que hace que losWoperadores no tengan un lugar para enviar el1y2.Lo único
Oque no se mueve es el que está atrapado en el centro. Lo3anterior cae durante 4 ciclos a laW.Entonces los números que caen están llenando los 4 espacios entre el
Wy3. Cuando se llena, otro número puede pasar sobre todos ellos y llegar alHoperador que finaliza el programa.6:00
Muy similar a la 12, las
6caídas a laWy la1a laH. Esto ocurre en 2 ciclos, finalizando el programa antes de que ocurra el caso 12.9:00
(Muestro una sola columna de
<porque los demás no hacen nada).La
Vtoma9y la mueve a la tubería de abajo, que desvía el objeto hacia la izquierda. La tubería<mueve el objeto hacia abajo y el siguiente hacia la derecha. ElVoperador coloca el9en el espacio de abajo y luego se envía a la salida.El
1hace movimientos iguales y alcanza elH, que termina el programa. A medida que las tuberías mueven objetos en el mismo ciclo, todo esto toma un solo ciclo.fuente