Решение: Кодовое слово по условию Фано
По каналу связи передаются шифрованные сообщения, содержащие только десять букв: А, Б, Е, И, К, Л, Р, С, Т, У; для передачи используется неравномерный двоичный код. Для кодирования букв используются кодовые слова.
Укажите кратчайшее кодовое слово для буквы У, при котором код удовлетворяет условию Фано. Если таких кодов несколько, укажите код с наименьшим числовым значением.
Примечание. Условие Фано означает, что никакое кодовое слово не является началом другого кодового слова. Это обеспечивает возможность однозначной расшифровки закодированных сообщений.
| Буква | Кодовое слово |
|---|---|
| А | 00 |
| Б | 1000 |
| Е | 010 |
| И | 011 |
| К | 1011 |
| Л | 1001 |
| Р | 1100 |
| С | 1010 |
| Т | 1101 |
| У | — |
Решение по шагам
4 шагаКодовое слово для буквы У не может иметь длину 1: слова $0$ и $1$ являются началами уже заданных кодовых слов.
Проверим слова длины 2. Слово $00$ уже используется, а $01$, $10$ и $11$ являются началами существующих кодовых слов.
Среди слов длины 3 варианты $000$ и $001$ начинаются с уже используемого слова $00$; $010$ и $011$ уже заняты; $100$, $101$ и $110$ являются началами существующих четырёхразрядных слов.
Слово $111$ не является началом ни одного из заданных кодовых слов и само не является их началом. Следовательно, оно удовлетворяет условию Фано и является кратчайшим возможным кодом.
Где здесь ошибаются
Выбрать слово, которое является началом одного из уже заданных кодовых слов.
Считать код $00$ допустимым, не учитывая, что он уже используется для буквы А.
Проверять только совпадение кодовых слов, но не условие, что одно слово не может быть началом другого.