В кодировке UTF-32 каждый символ кодируется 32 битами. Артем написал текст (в нем нет лишних пробелов):
«Врач, актер, акушер, генетик, издатель, кардиолог — профессии».
Ученик вычеркнул из списка название одной из профессий. Заодно он вычеркнул ставшие лишними запятые и пробелы — два пробела не должны идти подряд.
При этом размер нового предложения в данной кодировке оказался на 44 байта меньше, чем размер исходного предложения. Напишите в ответе вычеркнутое название профессии.
Для решения этой задачи сначала разберемся, сколько байт занимает оригинальный текст, а затем определим, какую профессию вычеркнули.
1. **Анализ исходного текста:**
Исходный текст, который нам дан:
«Врач, актер, акушер, генетик, издатель, кардиолог — профессии».
Мы видим, что в тексте перечислены 6 профессий: врач, актер, акушер, генетик, издатель, кардиолог.
2. **Определение количества байт в исходном тексте:**
В кодировке UTF-32 каждый символ занимает 4 байта. Нам нужно сосчитать количество символов в тексте.
Подсчитаем количество символов в предложении:
- "Врач" – 5 символов
- "актер" – 5 символов
- "акушер" – 6 символов
- "генетик" – 8 символов
- "издатель" – 9 символов
- "кардиолог" – 10 символов
- Запятые и пробелы также считаем. То есть:
- Запятые (5 запятых) + (всего 5 пробелов между словами)
- "—" (1 символ)
- Всего пробелов и запятых: 5 запятых + 5 пробелов + 1 знак "—" = 11 дополнительных символов.
Теперь посчитаем:
5 (Врач) + 5 (актер) + 6 (акушер) + 8 (генетик) + 9 (издатель) + 10 (кардиолог) + 11 (знаки, запятые и пробелы) = 54 символа.
Затем перемножим количество символов на 4 байта:
54 символа * 4 байта/символ = 216 байт.
3. **Размер нового предложения:**
Нам дано, что новое предложение получилось на 44 байта меньше:
216 байт - 44 байта = 172 байта.
4. **Определение количества символов в новом тексте:**
Теперь определим, сколько символов стало в новом предложении:
172 байта / 4 байта/символ = 43 символа.
5. **Поиск вычеркнутой профессии:**
Если из 54 символов мы получили 43 символа, то количество вычеркнутых символов:
54 - 43 = 11 символов.
Нужно теперь проверить профессии:
1. "Врач" – 5 символов
2. "актер" – 5 символов
3. "акушер" – 6 символов
4. "генетик" – 8 символов
5. "издатель" – 9 символов
6. "кардиолог" – 10 символов
Каждую профессию вычтем и проверим, сколько символов в тексте останется.
- Если мы вычеркнем "актер" (5 символов), то останется 49 символов. Это не подходит.
- Если мы вычеркнем "Врач" (5 символов), то останется 49 символов. Это не подходит.
- Если мы вычеркнем "акушер" (6 символов), то останется 48 символов. Это не подходит.
- Если мы вычеркнем "генетик" (8 символов), то останется 46 символов. Это не подходит.
- Если мы вычеркнем "издатель" (9 символов), то останется 45 символов. Это не подходит.
- Если мы вычеркнем "кардиолог" (10 символов), то останется 44 символов.
Таким образом, вычеркнутая профессия — это "акушер".
Ответ: акушер.