Для того чтобы решить задачу, начнем с того, что каждый символ в Unicode кодируется 16 битами, что соответствует 2 байтам. Поэтому, чтобы выяснить, сколько байтов занимает исходный текст, нужно подсчитать количество символов и умножить его на 2.
Исходный текст:
«Чиж, грач, стриж, гагара, пингвин, ласточка, жаворонок, свиристель, буревестник, вертиголовка птицы».
Теперь посчитаем количество символов, включая пробелы и запятые:
- В оригинальном тексте 114 символов.
Сумма всех символов, включая пробелы и знаки препинания, будет равна:
114 символов × 2 байта = 228 байт.
Если удалить одно название птицы и некоторую часть запятых/пробелов, то новый размер текста стал на 12 байт меньше. То есть новый размер текста будет:
228 байт - 12 байт = 216 байт.
Теперь нам нужно определить, какое название птицы мог вычеркнуть Вова. Если он вычеркнет название и все лишние запятые и пробелы, нам нужно оставить новое предложение с размером 216 байт.
Давайте рассмотрим названия птиц по очереди и проследим, как изменение их количества приведет к требуемому размеру текста:
- «Чиж» - 4 символа
- «грач» - 4 символа
- «стриж» - 5 символов
- «гагара» - 6 символов
- «пингвин» - 7 символов
- «ласточка» - 9 символов
- «жаворонок» - 10 символов
- «свиристель» - 11 символов
- «буревестник» - 12 символов
- «вертиголовка» - 12 символов
- «птицы» - 6 символов
Теперь проанализируем, как вычеркивание каждого названия повлияет на общее количество символов. Будем считать, что после вычеркнутого названия также удалятся лишние запятые и пробелы.
Если мы вычеркнем название «ласточка», то текст станет короче на 9 символов (само название + 1 запятая), что даст нам:
114 - 9 = 105 символов
105 символов × 2 байта = 210 байт.
Если мы вычеркнем название «жаворонок», то текст станет короче на 10 символов (само название + 1 запятая), что даст нам:
114 - 10 = 104 символа
104 символа × 2 байта = 208 байт.
Таким образом, у нас не получается нужного размера.
Как только мы вычеркиваем название «пингвин» (7 символов + 1 запятая), то текст станет короче на 8 символов, и мы получим:
114 - 8 = 106 символов
106 символов × 2 байта = 212 байт. Это тоже меньше, чем 216.
Однако, если мы вычеркнем «стриж» (5 символов + 1 запятая), то получим в результате:
114 - 6 = 108 символов
108 символов × 2 байта = 216 байт.
Таким образом, вычеркнутое название птицы: «стриж».