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