Таинственные страницы. Занимательная криптография. Иван Ефишов
Чтение книги онлайн.
Читать онлайн книгу Таинственные страницы. Занимательная криптография - Иван Ефишов страница 5
Попробуйте сделать это самостоятельно, потратьте на задачу час, два, три… Столько, сколько вам понадобится. Но не забегайте вперед, чтобы просто прочитать ответ. Задача не так сложна: при ее решении вам не придется воспользоваться ни одной математической формулой!
Подсказка: ответ задачи – двенадцатое число Фибоначчи.
Решим эту задачу подробно – шаг за шагом. Итак, слово длиной в одиннадцать знаков уже задано. Предположим, что сначала нам дана последовательность из 1 знака, затем из 2, 3…., 11 знаков. Каждый знак, как вы помните, – это либо точка, либо тире.
Первый шаг. Вначале имеем слово длиной в один знак: *, где * обозначает либо точку, либо тире.
Очевидно, слово у нас прочитается единственным образом. Когда конкретное сообщение из одного знака у вас перед глазами, то вы увидите либо • либо –.
Второй шаг. Теперь задано слово длиной уже в два знака: **.
(*)(*), (**) – два способа декодирования. Других комбинаций попросту нет. Здесь круглыми скобками выделены отдельные буквы (однозначные либо двузначные) в полученном нами слове.
Третий шаг. Имеем слово длиной в три знака: ***.
(*)(*)(*), (*)(**), (**)(*) – уже три способа декодирования (будем располагать последовательность из букв в лексикографическом[2] порядке их длины). Как мы помним, буквы из трех знаков (***) по условию нашей задачи не существует.
Четвертый шаг. Имеем слово длиной в четыре знака: ****.
(*)(*)(*)(*), (*)(*)(**), (*)(**)(*), (**)(*)(*), (**)(**) – вот так сюрприз! У нас теперь не четыре, как можно было бы ожидать, а целых пять способов декодирования.
Пятый шаг. Имеем слово длиной в пять знаков: *****.
(*)(*)(*)(*)(*), (*)(*)(*)(**), (*)(*)(**)(*), (*)(**)(*)(*), (**)(*)(*)(*), (*)(**)(**), (**)(*)(**), (**)(**)(*) – восемь вариантов декодирования.
Можно продолжать в том же духе. Но попытаемся угадать закономерность, возникающую в ходе решения задачи.
Выпишем количество способов декодирования, полученных на каждом нашем шаге.
Первый шаг – 1 способ.
Второй шаг – 2 способа.
Третий шаг – 3 способа.
Четвертый шаг – 5 способов.
Пятый шаг – 8 способов.
И т. д…
Теперь хорошо видно, что справа у нас стоят числа Фибоначчи:
f2 = 1, f3 = 2, f4 = 3, f5 = 5, f6 = 8….
Так как при решении задачи на первом шаге мы получили второе число Фибоначчи f2 = 1, на втором шаге – третье число f3 = 2, то, следовательно, правильным ответом будет двенадцатое число Фибоначчи f12 = 144, так как полученное слово состоит из одиннадцати знаков.
Какая элегантная и красивая задача! И вполне по силам любому. Надеюсь, вы получили море удовольствия при ее самостоятельном решении и не подглядывали в ответ.
Этюд V
Суеверный писец
Широко использовалась тайнопись и на Руси.
2
То есть вначале будем стараться выписывать слова, которые начинаются с букв, имеющих наименьшую длину, то есть состоящих из одного знака (*); а слова, содержащие буквы из двойных знаков (**), будем стараться выписывать после первых. Иначе говоря, слово (*)(*)(**) будем писать перед словом (*)(**)(*), так как одиночных знаков слева у первого слова больше, чем у второго.