Давайте пошагово разберемся с задачей.
Исходная информация:
- Каждый символ кодируется 9 битами.
- В предложении нет лишних пробелов.
- В предложении перечислены имена великих физиков:
«Ом, Бор, Кюри, Попов, Джоуль, Рентген, Курчатов, Резерфорд — великие физики»
- Вова случайно напечатал одну фамилию дважды подряд, вместе с запятой и пробелом.
- В результате длина предложения с ошибкой стала на 9 байт больше, чем без него.
Задача:
Определить, какая фамилия была удвоена.
Шаг 1. translate the problem into data:
Количество байт без ошибки (исходное предложение), обозначим L байт.
Количество байт с ошибкой — L + 9 байт (на 9 байт больше).
Каждый символ — 9 бит, что составляет 1.125 байт, или ( \frac{9}{8} ) байта.
Тогда:
[
\text{Количество символов без ошибки} = N
]
[
\text{Общий размер без ошибки в байтах} = N \times \frac{9}{8}
]
Аналогично, для с ошибкой:
[
(N + D) \times \frac{9}{8}
]
где ( D ) — число символов, добавленных в результате ошибочного повтора.
Но мы знаем, что разница в байтах — 9 bytes:
[
(N + D) \times \frac{9}{8} - N \times \frac{9}{8} = 9
]
[
\left[(N + D) - N \right] \times \frac{9}{8} = 9
]
[
D \times \frac{9}{8} = 9
]
[
D = 9 \times \frac{8}{9} = 8
]
Значит, в ошибке добавлено 8 символов.
Шаг 2. Определить, какая часть этого повторения.
- В предложении есть одна фамилия, повторенная полностью вместе с запятой и пробелом.
- Повтор — это последовательность: фамилия + запятая + пробел; она по сути повторяет исходную фамилию.
Обозначим имя фамилии — Ф. Тогда:
- Повтор — **Ф, ** (фамилия + запятая + пробел).
- Объем этой повторной части — это длина Ф + 2 символа (, и пробел).
Поскольку обнаружили 8 дополнительных символов, то:
[
\text{Длина повторенной части} = 8
]
Шаг 3. определить возможные фамилии длины 6 символов.
Допустим, фамилия — Ф, длина которой L символов.
Тогда:
[
\text{Общая длина повторенной части} = L + 2
]
Поскольку этот повтор, по условию, полностью повторяет фамилию и включает запятую и пробел, и дано, что это вызывает увеличение на 8 символов, что больше, чем длина фамилии + запятая + пробел.
- Чтобы увеличенная часть занимала 8 символов:
[
L + 2 = 8
]
[
L = 6
]
Шаг 4. сверка с реальным текстом.
Посмотрим список физических фамилий:
- Ом (3 символа)
- Бор (3)
- Кюри (4)
- Попов (5)
- Джоуль (6)
- Рентген (7)
- Курчатов (8)
- Резерфорд (9)
Из них только "Джоуль" — длиной 6 символов.
Длина "Джоуль" — 6.
Плюс запятая и пробел — 2 символа.
Общая длина повтора — 8 символов.
Это соответствует граничной ситуации, где:
- "Джоуль, " — 8 символов (6 + 2).
Именно так:
- Фамилия: "Джоуль"
- Повтор: "Джоуль, "
Когда Вова случайно ввел "[Фамилия], [Фамилия]" подряд, то:
Это увеличило длину текста на 8 символов, на - как вычислено - именно 8.
Итог:
Фамилия, которая была неправильно напечатана два раза — это «Джоуль».
Ответ:
Фамилия, которую Вова по ошибке набрал дважды подряд — это «Джоуль».