Вопрос:

В одной из кодировок UTF-32 каждый символ кодируется 32 битами. Рома написал текст (в нем нет лишних пробелов): «Уфа, Ухта, Тверь, Ростов, Вологда, Камбарка, Астрахань – города России». Ученик вычеркнул из списка название одного из городов. Заодно он вычеркнул ставшие лишними запятые и пробелы – два пробела не должны идти подряд. При этом размер нового предложения в данной кодировке оказался на 36 байт меньше, чем размер исходного предложения. Напишите в ответе вычеркнутое название города России.

Ответ:

Здравствуйте! Давайте решим задачу вместе. 1. Определим, сколько байт требуется для кодирования одного символа в UTF-32. Так как каждый символ кодируется 32 битами, а 1 байт = 8 бит, то каждый символ занимает 32 / 8 = 4 байта. 2. Разница в размере предложений составляет 36 байт. Это значит, что вычеркнутый город, вместе с удаленными запятыми и пробелами, занимал 36 байт. 3. Посчитаем количество символов, которое было удалено: 36 байт / 4 байта/символ = 9 символов. 4. Теперь проанализируем список городов: «Уфа, Ухта, Тверь, Ростов, Вологда, Камбарка, Астрахань». Нужно найти город, название которого вместе с запятой и пробелами (после него) содержит 9 символов. Попробуем: * Уфа – 3 символа, с запятой и пробелом: 6 символов (не подходит). * Ухта – 4 символа, с запятой и пробелом: 7 символов (не подходит). * Тверь – 5 символов, с запятой и пробелом: 8 символов (не подходит). * Ростов – 6 символов, с запятой и пробелом: 9 символов (подходит). Ответ: Ростов.
Смотреть решения всех заданий с фото

Похожие