Вопрос:

В одной из кодировок Unicode каждый символ кодируется 16 битами. Вова хотел написать текст (в нём нет лишних пробелов): «Ом, Бор, Кюри, Попов, Джоуль, Рентген, Курчатов, Резерфорд – великие физики». Фамилию одного учёного ученик написал два раза подряд, добавив необходимые запятую и пробел. При этом размер написанного предложения в данной кодировке оказался на 20 байт больше, чем размер нужного предложения. Напишите в ответе слово, использованное дважды.

Смотреть решения всех заданий с листа

Ответ:

Краткое пояснение: Для решения задачи необходимо рассчитать, сколько байт занимает одна буква, запятая и пробел, а затем определить, какая фамилия при добавлении самой себя с запятой и пробелом увеличит общий объем на 20 байт.

Пошаговое решение:

  • Размер одной буквы: В кодировке Unicode каждый символ занимает 16 бит. 1 байт = 8 бит. Следовательно, 1 символ = 16 бит / 8 бит/байт = 2 байта.
  • Размер запятой и пробела: По условию, они добавляются между двумя одинаковыми фамилиями.
  • Исходное предложение: «Ом, Бор, Кюри, Попов, Джоуль, Рентген, Курчатов, Резерфорд – великие физики».
  • Предложение ученика: Одна из фамилий написана дважды с запятой и пробелом. Например, если ученик написал «Резерфорд, Резерфорд – великие физики».
  • Разница в размере: Добавление одной фамилии дважды с запятой и пробелом увеличивает общий размер на 20 байт. Это означает, что размер одной фамилии плюс запятая и пробел составляет 20 байт.
  • Расчет размера фамилии: Размер фамилии + размер запятой + размер пробела = 20 байт.
  • Размер фамилии: 20 байт (общая разница) - 1 байт (запятая) - 1 байт (пробел) = 18 байт.
  • Количество букв в фамилии: Поскольку каждая буква занимает 2 байта, то 18 байт / 2 байта/букву = 9 букв.
  • Поиск фамилии из 9 букв: Среди перечисленных фамилий («Ом», «Бор», «Кюри», «Попов», «Джоуль», «Рентген», «Курчатов», «Резерфорд») только «Резерфорд» состоит из 9 букв.

Ответ: Резерфорд

ГДЗ по фото 📸
Подать жалобу Правообладателю