Восстановите кодовую таблицу для пяти неповторяющихся букв, которые есть в слове Франарк (Ф, Р, А, Н, К), используя закодированное сообщение 1101101101101010011010110111.
Ответ:
Для решения этой задачи нам нужно проанализировать исходное сообщение 'Франарк' и закодированное сообщение '1101101101101010011010110111'.
1. **Определение длины кода:** В слове 'Франарк' 6 букв, но уникальных только 5 (Ф, Р, А, Н, К). Закодированное сообщение имеет длину 28. Если каждая буква имеет одинаковую длину кода, то длина кода каждой буквы должна быть 28/6 = 4 целых и 4/6, округляем до 4 или 5, но если бы было 5 символов тогда бы было 28/5 = 5 целых и 3/5 что опять не целое. Следовательно, необходимо использовать 3, 4 или 5. Так как у нас 5 букв, то 3 символа дадут 2^3 = 8 комбинаций. Если бы было 2 то 2^2 = 4, а нам нужно 5. Поэтому код должен быть длиной 3, 4 или 5, но по таблице, нам нужно 3.
2. **Сопоставление букв и кодов:** - 'Франарк' состоит из 6 букв, кодированных 5 уникальными символами. - 'Ф' встречается 1 раз и идет первым в слове. - 'Р' встречается 1 раз и идет вторым. - 'А' встречается 2 раза и идет третьим и пятым. - 'Н' встречается 1 раз и идет четвертым. - 'К' встречается 1 раз и идет последним.
Разделим кодовую строку на блоки по 3 символа: 110 110 110 110 101 001 101 011 011
Если возьмем код в 5 символов 11011 01101 10101 00110 10110 111 не хватает.
Заметим, что длина закодированного сообщения 28 символов, а не 27 или 30, для 3-х или 5-и битного представления. Значит, нам надо использовать неравномерное кодирование.
Так как в условии сказано что используется равномерный код, это значит что каждая буква кодируется одинаковым количеством бит, 28 = 7*4, значит каждая буква кодируется 4 битами. 1101, 1011, 0110, 1010, 0110, 1011, 0111 (но у нас 6 букв, но в задании 5 разных, повторения А, Р)