Сверь числа и знаки с фото.
- Пять букв английского алфавита закодированы кодами различной длины. Эти коды представлены в таблице:
A | B | C | D | E
- | + + | + - | - - + | - - -
Какое сообщение в этой кодировке не содержит ошибок и может быть корректно декодировано?
- Ответ: ___
- Ответ: ___
- Ответ: ___
- Ответ: ___
Краткий ответ: вариант 3. Он декодируется без остатка в последовательность латинских букв A A B C D E B C (слитно: AABCDEBC).
Принцип. Код является префиксным: ни один код не является началом другого. Поэтому сначала проверяем первые два символа:
- \(\mathtt{-+}\rightarrow A\)
- \(\mathtt{++}\rightarrow B\)
- \(\mathtt{+-}\rightarrow C\)
Если первые два символа — \(\mathtt{--}\), то пары в таблице нет, поэтому берём три символа:
- \(\mathtt{--+}\rightarrow D\)
- \(\mathtt{---}\rightarrow E\)
Если в конце остаётся один символ или недопустимая пара, сообщение ошибочно.
Разбор варианта 3:
\[ (\mathtt{-+})(\mathtt{-+})(\mathtt{++})(\mathtt{+-})(\mathtt{--+})(\mathtt{---})(\mathtt{++})(\mathtt{+-}) \]
Это даёт:
\[ A\,A\,B\,C\,D\,E\,B\,C. \]
Проверка: суммарная длина кодов \(2+2+2+2+3+3+2+2=18\) символов; все символы использованы, остатка нет. В вариантах 1, 2 и 4 после разбора остаются лишние символы в конце, поэтому они не подходят.