Вступ:
У мене є багато різних шифрів, що зберігаються в документі, який я колись складав у дитинстві, я вибрав декілька тих, які, на мою думку, найкраще підходять для викликів (не надто банальні та не надто жорсткі) та перетворив їх на виклики. Більшість із них досі перебувають у пісочниці, і я ще не впевнений, чи опублікую їх усі, або лише декілька. Ось третій і найпростіший (після комп'ютерного шифру і трифідного шифру я розміщував раніше).
За допомогою годинникового шифру ми використовуємо таке зображення для шифрування тексту:
Так вирок, як this is a clock cipher
би став:
t h i s i s a c l o c k c i p h e r (without additional spaces of course, but added as clarification)
19:7:8:18:00:8:18:00:AM:00:2:11:14:2:10:00:2:8:15:7:4:17
Виклик:
Давши рядок sentence_to_encipher
, розшифруйте її, як описано вище.
Правила виклику:
- Ви можете припустити, що
sentence_to_encipher
буде містити лише літери та пробіли. - Ви можете використовувати або малі, або великі регістри (будь ласка, вкажіть, який саме ви використовували у своїй відповіді).
- Вам не дозволяється додавати провідні нулі для одноцифрових зашифрованих літер
b
наскрізьj
, але дві нулі00
обов'язкові для пробілів. - Ви повинні використовувати
:
як роздільник, і додаткові провідні або слідові:
заборонені. - Вам дозволяється використовувати малі літери,
am
аpm
не великі регістриAM
таPM
, поки це буде відповідати.
Загальні правила:
- Це код-гольф , тому найкоротша відповідь у байтах виграє.
Не дозволяйте мовам з кодовим гольфом відштовхувати вас від публікації відповідей з мов, що не кодують гольф. Спробуйте придумати якомога коротшу відповідь на "будь-яку" мову програмування. - Для вашої відповіді застосовуються стандартні правила з правилами вводу / виводу за замовчуванням , тому вам дозволяється використовувати STDIN / STDOUT, функції / метод із відповідними параметрами та повним програмами типу повернення. Твій дзвінок.
- Лазівки за замовчуванням заборонені.
- Якщо можливо, додайте посилання з тестом для вашого коду (тобто TIO ).
- Також настійно рекомендується додавати пояснення до своєї відповіді.
Тестові приклади:
Input: "this is a clock cipher"
Output: "19:7:8:18:00:8:18:00:AM:00:2:11:14:2:10:00:2:8:15:7:4:17"
Input: "test"
Output: "19:4:18:19"
Input: "what time is it"
Output: "22:7:AM:19:00:19:8:12:4:00:8:18:00:8:19"
Input: "acegikmoqsuwy bdfhjlnprtvxz"
Output: "AM:2:4:6:8:10:12:14:16:18:20:22:24:00:1:3:5:7:9:11:13:15:17:19:21:23:PM"
Input: "easy peazy"
Output: "4:AM:18:24:00:15:4:AM:PM:24"
[7, ":", 8, ":", "00", ":", 1, ":", 14, ":", 1]
для hi bob
, чи повинен приєднатися до результату? До речі, акуратний шифр!
['7', ':', '8', ':', '0', '0', ':', '1', ':', '1', '4', ':', '1']
).