Теория:
1. Тип ответа: числовой/буквенный.
2. Структура содержания задания: дана текстовая задача с вариантами кодов либо в задаче записано, какой алфавит и как кодируется.
3. Уровень сложности: базовый.
4. Примерное время выполнения: \(4\) минуты.
5. Количество баллов: \(1\).
6. Требуется специальное программное обеспечение: нет.
7. Задание проверяет умение кодировать и декодировать информацию.
От разведчика было получено следующее сообщение: \(001001110110100\).
В этом сообщении зашифрован пароль — последовательность русских букв.
В пароле использовались только буквы А, Б, К, Л, О, С; каждая буква кодировалась двоичным словом по следующей таблице.
А | Б | К | Л | О | С |
\(01\) | \(100\) | \(101\) | \(111\) | \(00\) | \(110\) |
Расшифруй сообщение. Запиши в ответе пароль.
Прежде чем приступить к дешифровке сообщения, не лишним будет обратить внимание на то, какое из условий Фано соблюдается в задании.
Если это прямое условие, то декодировать сообщение проще, если начать с начала. А при обратном условии Фано сообщение декодировать проще с конца.
Не трудно заметить, что здесь выполняется прямое условие Фано: с «\(01\)» никакие другие коды, кроме буквы А, не начинаются, а вот на «\(00\)», помимо буквы О, ещё заканчивается код буквы Б.
Следовательно, декодировать сообщение будем с начала.
Решение
Идём по исходной строке \(001001110110100\) и «отрезаем» коды букв, данные в таблице:
\(00\) — однозначно буква О;
\(100\) — однозначно буква Б;
\(111\) — однозначно буква Л;
\(01\) — однозначно буква А;
\(101\) — однозначно буква К;
\(00\) — однозначно буква О.
Нам повезло, и слово расшифровалось однозначно. Если в ходе дешифровки возникли двоякие ситуации, нужно аккуратно довести дешифровку до конца и выбрать вариант, при котором в исходном сообщении не осталось бы лишних, «непристроенных» символов.
Осталось записать ответ в правильном виде.
Поэтому снова читаем внимательно вопрос к задаче: «Запиши в ответе пароль».
Правильный ответ: ОБЛАКО.