Tracks
/
Kotlin
Kotlin
/
Ejercicios
/
Apretón de manos secreto
Apretón de manos secreto

Apretón de manos secreto

Fácil

Introducción

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

Diseñaste el código de modo que una persona diga un número entre 1 y 31, y la otra persona lo convierta en una serie de acciones.

Instrucciones

Tu tarea es 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 mirando los cinco dígitos de más a la derecha del número, una vez que lo hayas convertido a binario. Empieza por el dígito de más a la derecha y avanza hacia la izquierda.

Las acciones para cada posición son:

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

Veamos 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 otra vez hacia la izquierda, el siguiente dígito es 0, así que dejas los ojos abiertos.
  • Al avanzar otra vez hacia la izquierda, el siguiente dígito es 1, así que saltas.

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

wink, jump

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

  • double blink
  • jump
  • invertir el orden de las acciones

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

jump, double blink
Note

Si tienes dudas sobre qué es el binario o cómo funciona, echa un vistazo a este tutorial de binario.

Editar en GitHub El enlace se abre en una ventana o una pestaña nuevas
Kotlin Exercism

¿Todo listo para empezar Apretón de manos secreto?

Regístrate en Exercism para aprender y dominar Kotlin con 88 ejercicios y mentoría humana real, todo gratis.