По каналу связи передаются сообщения, содержащие только буквы из набора: Б, К, Л, О, Н. Для передачи используется двоичный код, удовлетворяющий условию Фано. Кодовые слова для некоторых букв известны: Б — 00, Н — 010, Л — 111. Для двух оставшихся букв К и О кодовые слова неизвестны. Какое количество двоичных знаков требуется для кодирования слова КОЛОБОК, если известно, что оно закодировано минимально возможным количеством двоичных знаков?
Примечание. Условие Фано означает, что никакое кодовое слово не является началом другого кодового слова. Это обеспечивает возможность однозначной расшифровки закодированных сообщений.
Кодовые слова 0, 1 , 01 и 11 использовать нельзя, так как это нарушает условие Фано. Кодовые слова Б — 00, Н — 010, Л — 111 заняты. Остаются свободными кодовые слова: 011, 10 и 110. Так как в слове КОЛОБОК буква О встречается чаще, чем буква К, то кодовое слово для нее надо подобрать короче.
Дадим букве О кодовое слово 10, а букве К кодовое слово 011 (или 110).
Тогда слово КОЛОБОК занимает 3+2+3+2+2+2+3=17 двоичных знаков.
При других вариантах кодирования букв, слово будет занимать большее количество двоичных знаков.
Ответ: 17.

