Ми разом із друзями та друзями друзів засновуємо таємний клуб програмування. Не всі знайомі одне з одним, тож ми вирішили створити таємне рукостискання, за допомогою якого можна впізнати, що людина належить до клубу. Ми не хочемо, щоб хтось необізнаний зміг розгадати цей шифр.
Ми придумали його так, що одна людина називає число від 1 до 31, а інша перетворює його на послідовність дій.
Перетворіть число від 1 до 31 на послідовність дій у таємному рукостисканні.
Послідовність дій визначають, дивлячись на пʼять найправіших цифр числа після перетворення його в двійкову систему. Починаємо з найправішої цифри і рухаємося ліворуч.
Дії для кожного розряду такі:
00001 = wink
00010 = double blink
00100 = close your eyes
01000 = jump
10000 = Reverse the order of the operations in the secret handshake.
Розгляньмо число 9 як приклад:
1001.wink.Це була остання цифра, тож остаточний код такий:
wink, jump
Для числа 26, яке в двійковій системі має вигляд 11010, отримуємо такі дії:
Отже, таємне рукостискання для 26 таке:
jump, double blink
Якщо не зрозуміло, що таке двійкова система або як вона працює, перегляньте цей посібник із двійкової системи.
Зареєструйтеся на Exercism, щоб вивчати й опановувати PHP, а також 11 концепцій121 вправа та справжнє наставництво від людей, і все це безкоштовно.