Для решения задачи давайте проанализируем текст, который напечатал Вова, и выявим, какая фамилия могла быть напечатана дважды.
Текст: «Ом, Бор, Кюри, Попов, Джоуль, Рентген, Курчатов, Резерфорд — великие физики».
Определим количество символов в тексте.
Так как в Вовиной кодировке каждый символ кодируется 9 битами, конвертируем биты в байты. Поскольку 1 байт = 8 бит, 9 бит = 1.125 байта. Это значит, что каждый символ занимает 1.125 байта, но исходя из того, что мы работаем с целыми байтами, будем считать это округляя, что 9 бит на символ - это вес, который в сумме увеличивается на 1 байт, когда дело касается двух символов.Посчитаем, сколько байт у нас будет изначально.
Текст включает 9 фамилий и дополнительные символы (запятые и пробелы). Важно понять, что если текст увеличился на 9 байт из-за повтора, это значит, что добавленные два символа (фамилия с пробелом) = 1.125 байта (типа) * 2.Предположим, что повторяется фамилия.
Текст состоит из следующих фамилий: «Бор», «Кюри», «Попов», «Джоуль», «Рентген», «Курчатов», «Резерфорд».Проверим каждую фамилию, чтобы найти соответствие 9 дополнительных байтам.
Правило 9 байт больше:- Если у нас есть пробел перед фамилией и запятая после, это +3 символа = +3 * 1.125 байта = 3.375 байта.
Пример:
- Если фамилия «Бор» была напечатана дважды:
«... Бор, Бор, Кюри...» = повторы дают 10 символов, это + 9 + пробел и запятая = 3.375ба
Пробуем каждую фамилию, и лишь в случае с «Попов» мы увидим, что его 2 раза дав с запятой добавляя +9 байт.
Таким образом, потеряв 9 байт с пробелом получается, что Вова напечатал:
Ответ: "Попов".
Это имя напечатано дважды в предложении.