Rutas
/
ARM64 Assembly
ARM64 Assembly
/
Ejercicios
/
Apretón de manos secreto
Apretón de manos secreto

Apretón de manos secreto

Media

Introducción

Estás empezando un club de programación secreto con algunos amigos y amigos de amigos. No todos se conocen entre sí, así que tú y tus amigos habéis decidido crear un apretón de manos secreto que podáis usar para reconocer que alguien es miembro. No quieres que nadie que no esté al tanto pueda descifrar el código.

Habéis diseñado el código de modo que una persona dice un número entre el 1 y el 31, y la otra lo convierte en una serie de acciones.

Instrucciones

Tu tarea consiste en convertir un número entre 1 y 31 en una secuencia de acciones del apretón de manos secreto.

La secuencia de acciones se elige examinando los cinco dígitos más a la derecha del número una vez convertido a binario. Empieza por el dígito más a la derecha y avanza hacia la izquierda.

Las acciones para cada posición del número son:

00001 = wink
00010 = double blink
00100 = close your eyes
01000 = jump
10000 = Reverse the order of the operations in the secret handshake.

Vamos a usar el número 9 como ejemplo:

  • El 9 en binario es 1001.
  • El dígito que está más a la derecha es 1, así que la primera acción es wink.
  • Al avanzar hacia la izquierda, el siguiente dígito es 0, así que no hay «double blink».
  • Al avanzar de nuevo hacia la izquierda, el siguiente dígito es 0, así que dejas los ojos abiertos.
  • Al avanzar de nuevo hacia la izquierda, el siguiente dígito es 1, así que das un salto.

Ese era el último dígito, así que el código final es:

wink, jump

Dado el número 26, que es 11010 en binario, obtenemos las siguientes acciones:

  • double blink
  • jump
  • invertir las acciones

Por lo tanto, el apretón de manos secreto para 26 es:

jump, double blink
Note

Si no estás seguro de qué es el binario o cómo funciona, echa un vistazo a este tutorial sobre binario.

Formato de salida

Devuelve la secuencia de acciones como un string terminado en null, usando una coma y un espacio como separadores.

Editar en GitHub El enlace se abre en una ventana o pestaña nueva
ARM64 Assembly Exercism

¿Listo para empezar Apretón de manos secreto?

Regístrate en Exercism para aprender y dominar ARM64 Assembly con 78 ejercicios y mentoría humana real, todo gratis.