Ошибка.
Попробуйте повторить позже
Для кодирования русского алфавита решили использовать неравномерный двоичный код, удовлетворяющий условию Фано. Какова наименьшая возможная суммарная длина кодовых слов для букв Х, Т, О, Н, Ь?
Примечание. Условие Фано означает, что никакое кодовое слово не является началом другого кодового слова.
Нарисуем бинарное дерево. Так как «подвесить» нужно все буквы русского алфавита нам необходимо оставить одну ветку свободной. Тогда ответ равен
Ошибка.
Попробуйте повторить позже
По каналу связи передаются сообщения, содержащие только все заглавные буквы русского алфавита. Для передачи используется двоичный код, допускающий однозначное декодирование. Укажите минимальную возможную длину закодированной последовательности ПАРАЛЛЕЛЬ.
Подвешиваем все буквы на бинарное дерево и не забываем оставить свободную ветку для остальных букв алфавита.
Складываем длины кодов каждой буквы и получаем ответ:
Ошибка.
Попробуйте повторить позже
Машина дикая бешеная совсем взбесилась и закодировала заглавные буквы русского алфавита неравномерным двоичным кодом, удовлетворяющим условию Фано. Он вспомнил, что у всех кодовых слов длина больше символов, но при том минимально возможная. Слову ОБМАН соответствует код . Помогите машине дикой бешеной найти код для слова БОМБА.
Примечание. Прямое условие Фано означает, что ни одно кодовое слово не является началом другого кодового слова.
Так как длина каждого кодового слова не меньше символов и минимальна, а букв , то можно сделать вывод, что длина каждого кодового слова равна . Разобьём код слова ОБМАН на тройки справа налево: . Таким образом, букве О соответствует код , Б — , М — , А — , Н — . Тогда нетрудно записать код слова БОМБА, используя полученные выше коды.
Получаем ответ:
Ошибка.
Попробуйте повторить позже
Все заглавные буквы русского алфавита закодированы неравномерным двоичным кодом, удовлетворяющим условию Фано, где никакое кодовое слово не является началом другого кодового слова. Это обеспечивает возможность однозначной расшифровки закодированных сообщений. Известно, что слово ВОЛОС закодировано последовательностью букв соответственно Какое наименьшее число двоичных знаков может содержать код слова ПОВОРОТ?
Так как в задаче сказано, что слово ВОЛОС закодировано соответственно некоторому кодовому слову, то каждой букве соответствует кодовое слово длины (они разделены между собой пробелами). Разместим буквы ПбР и Т на самые короткие веточки. Посчитаем общую длину слова ПОВОРОТ:
Ошибка.
Попробуйте повторить позже
По каналу связи передаются сообщения, которые могут содержать все строчные и заглавные гласные буквы русского алфавита; для передачи используется двоичный код, допускающий однозначное декодирование. Укажите длину кратчайшего кода для слова ОаоЫАы, при котором будет допускаться однозначное декодирование.
Примечание. Русский алфавит содержит 33 буквы, 10 из которых — гласные.
Все буквы в слове используются по одному разу, значит, приоритезации нет, поэтому нужно создать ветвей (одна дополнительная, так как используются все строчные и заглавные буквы алфавита), минимизируя общую длину шести из них. Получим:
Ошибка.
Попробуйте повторить позже
По каналу связи передаются сообщения, содержащие строчные и заглавные согласные буквы английского алфавита; для передачи используется двоичный код, допускающий однозначное декодирование. Укажите длину кратчайшего код для слова PRTTST, при котором код будет допускаться однозначное декодирование.
Примечание. Английский алфавит содержит 26 букв, 21 из которых согласная.
Так как в задаче сказано, что использованы строчные и заглавные согласные буквы английского алфавита, но в слове, длину которого нужно найти, нет строчных букв, значит, нужно оставить одну ветку, с помощью которой будет возможно закодировать хотя бы одну строчную букву. В предложенном слове буквы - P, R, S, T, значит, веточек должно быть >= (одна свободная ветка для хотя бы одной строчной буквы). Буква T встречается раза, значит, чтобы слово имело минимальную длину, её кодовое слово должно быть небольшим. Пусть T - , добавим ветви к , получим и , но у нас три буквы, продлив еще ветви, получим четыре веточки, на которые и подвесим оставшиеся буквы, одна ветвь останется свободной. Получаем, что кодовое слово для PRTTST имеет длину:
Ошибка.
Попробуйте повторить позже
По каналу связи передаются сообщения, содержащие только десять букв: А, Б, Г, И, М, Н, Р, Т, Ы, Я. Для передачи используется двоичный код, удовлетворяющий условию Фано. Кодовые слова для некоторых букв известны: Б – , И – , Р – . Какое наименьшее количество двоичных знаков потребуется для кодирования слова АНИМАГ?
Примечание. Условие Фано означает, что ни одно кодовое слово не является началом другого кодового слова.
На картинке ниже представлена возможная кодировка букв. Не забываем оставить одно место для оставшихся трёх букв.
Итого, наименьшее количество двоичных знаков, которое потребуется для кодировки слова АНИМАГ равно:
Ошибка.
Попробуйте повторить позже
Для кодирования русского алфавита решили использовать неравномерный двоичный код, удовлетворяющий условию Фано. Какова наименьшая возможная суммарная длина кодовых слов для букв А, К, Н, П?
Примечание. Условие Фано означает, что никакое кодовое слово не является началом другого кодового слова. Это обеспечивает возможность однозначной расшифровки закодированных сообщений.
Рисуем дерево до глубины 2. Легче все было бы за каждую вершину повесить одну букву и вышла бы длина 8, но нам надо закодировать весь алфавит, поэтому разветвляем одну вершину и за один конец вешаем букву, другой оставляем пустым. Получается, все буквы, кроме одной, имеют длину 2, а эта одна - длину 3. Сумма = 9.
Ошибка.
Попробуйте повторить позже
Все заглавные буквы русского алфавита закодированы неравномерным двоичным кодом, в котором никакое кодовое слово не является началом другого кодового слова. Это условие обеспечивает возможность однозначной расшифровки закодированных сообщений. Известно, что слову КАША соответствует код 011011010. Какое наименьшее количество двоичных знаков может содержать сообщение, кодирующее слово ОСОКА?
Начнем с расшифровку кодового слова с конца. Букве А не может соответствовать код 0, так как в начале слова есть 0, а в начале должна стоять буква К. 10 подходящий код, но стоит проверить дальше. 010 не может соответствовать А, так как в слове больше нет 010, а буквы А две в слове, 1010 не может по тем же причинам. Далее проверять нет смысла, так как с кодами длиннее мы не уместим вторую букву А. Значит, А - 10. Если перебрать варианты, получается, что 01 10 110 10 единственный подходящий порядок. Выходит, К - 01, А - 10, Ш - 110. Если перерисовать это в дерево, получим, что веточка 00 не занята, буква О встречается два раза, поэтому за 00 подвесим О. Остается разветвить 111 и за 1110 подвесить С. Минимальная длина выходит 12.