В одной из кодировок UTF-32 каждый символ кодируется 4 байтами. Иван написал текст (в нём нет лишних пробелов):
Рак, Весы, Орион, Дракон, Козерог, Близнецы, Андромеда, Наугольник – созвездия.
Ученик удалил из списка название одного созвездия. Заодно он удалил ставшие лишними запятые и пробелы – два пробела не должны идти подряд. При этом размер нового предложения в данной кодировке оказался на 288 бит меньше, чем размер исходного предложения.
Запишите в ответе название удаленного созвездия.
Решение:
По условию задачи, информационный вес символа i = 4 байта, а размер исходного
предложения уменьшился на I = 288 бит, т.е. удалили какое-то количество символов
по 4 байта, что, в итоге, составило 288 бит.
Сначала вес символа и размер удаленного текста представим в одних единицах –
в байтах. Вес символа уже выражен в байтах, остаётся перевести в байты размер
удалённого сообщения. Воспользуемся пропорцией:
1 байт ---------- 8 бит
х байт ---------- 288 бит
Найдем значение х:
x = (1 ∙ 288) /8 = 36 байт
Теперь, в соотвествии с формулой: I = K * i,
где I – информационный объем сообщения,
i – информационный вес символа,
K – количество символов в сообщении
найдем количество удаленных символов:
K = I / i = 36 / 4 = 9 символов
Но, т.к. вместе с названием созвездия, по условию задачи, удалили пробел и
запятую, т.е. еще два символа, то количество букв в названии созвездия:
9 – 2 = 7
Ищем название созвездия, в котором 7 букв.
Это Козерог.