Контрольные задания > 3. В кодировке UTF-32 каждый символ кодируется 32 битами. Саша написал текст (в нем нет лишних пробелов):
«Нил, Амур, Волга, Ангара, Макензи, Амазонка – реки». Ученик вычеркнул из списка название одной из рек. Заодно он вычеркнул ставшие лишними запятые и пробелы – два пробела не должны идти подряд. При этом размер нового предложения в данной кодировке оказался на 32 байта меньше, чем размер исходного предложения. Напишите в ответе вычеркнутое название реки.
Вопрос:
3. В кодировке UTF-32 каждый символ кодируется 32 битами. Саша написал текст (в нем нет лишних пробелов):
«Нил, Амур, Волга, Ангара, Макензи, Амазонка – реки». Ученик вычеркнул из списка название одной из рек. Заодно он вычеркнул ставшие лишними запятые и пробелы – два пробела не должны идти подряд. При этом размер нового предложения в данной кодировке оказался на 32 байта меньше, чем размер исходного предложения. Напишите в ответе вычеркнутое название реки.
Сначала определим размер исходного предложения.
В исходном предложении: «Нил, Амур, Волга, Ангара, Макензи, Амазонка – реки» 37 символов (с учетом запятых, пробелов и тире).
Размер каждого символа в кодировке UTF-32 составляет 32 бита, или 4 байта (32 бита / 8 бит/байт = 4 байта).
Размер исходного предложения: 37 символов * 4 байта/символ = 148 байт.
После вычеркивания реки размер уменьшился на 32 байта. Значит, новый размер: 148 байт - 32 байта = 116 байт.
Пусть X - количество символов в новом предложении. Тогда X * 4 байта/символ = 116 байт.
X = 116 байт / 4 байта/символ = 29 символов.
Разница в количестве символов: 37 - 29 = 8 символов.
Удалены запятая, пробел и название реки, а также лишние пробелы и запятые. Название реки должно содержать примерно 5-6 символов.
Перечислим реки из списка: Нил (3), Амур (4), Волга (5), Ангара (6), Макензи (7), Амазонка (8).
Подходящий кандидат - Волга, так как при ее удалении удаляется еще запятая и один пробел.
Проверим:
Исходное предложение: «Нил, Амур, Волга, Ангара, Макензи, Амазонка – реки» (37 символов)
Новое предложение: «Нил, Амур, Ангара, Макензи, Амазонка – реки» (29 символов)
Разница: 37 - 29 = 8 символов.
Действительно, размер уменьшился на 32 байта.
Ответ: Волга