Чтобы решить задачу, давайте сначала определим, насколько много байт занимают символы в тексте. В кодировке UTF-32 каждый символ занимает 4 байта (32 бита).
Теперь давайте запишем длину исходного предложения и проанализируем его. Исходный текст:
«Уфа, Ухта, Тверь, Ростов, Вологда, Камбарка, Астрахань — города России».
Посчитаем количество символов:
Посчитаем символы между запятыми:
- «Уфа» - 3 символа
- «Ухта» - 4 символа
- «Тверь» - 5 символов
- «Ростов» - 6 символов
- «Вологда» - 7 символов
- «Камбарка» - 8 символов
- «Астрахань» - 10 символов
Теперь добавим количество запятых (6 запятых).
Итак, общее количество символов (без учета пробелов):
- 3 + 4 + 5 + 6 + 7 + 8 + 10 + 6 (запятые) = 49 символов.
Теперь конвертируем это количество символов в байты:
- 49 символов × 4 байта = 196 байт.
Теперь нам нужно понять, сколько байт стало после удаления одного города и ненужных запятых. Сказано, что размер нового предложения на 36 байт меньше.
Теперь высчитаем новый размер:
- 196 байт - 36 байт = 160 байт.
Теперь нам нужно определить, сколько символов соответствует 160 байтам:
- 160 байт / 4 байта на символ = 40 символов.
Теперь мы ищем, какой город мог быть вычеркнут, в результате чего общее количество символов уменьшилось с 49 до 40. То есть, мы должны удалить город, длина которого (в символах) и количество лишних символов из удаленных запятых и пробелов в сумме дают 9 символов (49 - 40 = 9).
Теперь проверяем длины названий городов:
- Уфа (3)
- Ухта (4)
- Тверь (5)
- Ростов (6)
- Вологда (7)
- Камбарка (8)
- Астрахань (10)
Мы можем вычеркнуть название одного города или несколько запятых. Запятые занимают 6 символов, при удалении одной мы уменьшаем длину текста на 1 символ.
Смотрим, какие удаления могут дать нам 9 символов:
- Вычеркнув «Камбарка» (8) и 1 запятую (1), мы получите:
Таким образом, город, который был вычеркнут, это «Камбарка».
Ответ: Камбарка.