Просмотр задания
По каналу связи передаются сообщения, каждое из которых содержит 20 букв E, 16 букв И, 6 букв К и 4 буквы П (других букв в сообщениях нет). Каждую букву кодируют двоичной последовательностью. При выборе кода учитывались два требования:

а) ни одно кодовое слово не является началом другого (это нужно, чтобы код допускал однозначное декодирование);

б) общая длина закодированного сообщения должна быть как можно меньше.
Известно что для одной из букв использовано кодовое слово 10.Укажите кратчайшие кодовое слово для буквы К,при этом код будет допускать однозначное декодирование.Если таких кодов несколько укажите код с наименьшим числовым значением.
7 февраля 2016
Ответы (4)
Информатик БУ # 8 февраля 2016 в 11:38 0
В сообщении четыре буквы. Одна из них - 10
Нам нужно, чтобы общая длина закодированного сообщения была как можно меньше, значит длина кодов должна быть наименьшей.
1 в качестве кода мы использовать не можем, т.к. 1 - это начало кода 10.
Проверим код 0:
0
10
110
111
Без кода 0 кратчайшие коды будут такими:
00
01
10
11
В первом случае длина равна 20*1+16*2+6*3+4*3 = 82
Во втором случае длина равна 20*2+16*2+6*3+4*3 = 92
Первый вариант короче. Код буквы К трёхзначный, наименьший из трёхзначных - 110
Имаев Ильнар # 8 февраля 2016 в 16:29 0
в ответе написано что 110*
Информатик БУ # 8 февраля 2016 в 17:10 0
Хм, пересчитал длины, да, немного короче выходит. Поправил.
Интересная задачка. Откуда?
Имаев Ильнар # 8 февраля 2016 в 19:21 0
Л.Н.Евич Информатика и ИКТ,20 тренировочных вариантов.
Перевести число из в Результат: 510 = 1012