Ответ:

Решение:

В условии сказано, что Unicode кодирует каждый символ 16 битами, что равно 2 байтам.

Ученик вычеркнул название одного города, а также лишние запятые и пробелы. Из-за этого размер предложения уменьшился на 22 байта.

Так как лишние запятые и пробелы, которые были удалены, составляли 2 байта (два пробела по 1 байту и две запятые по 1 байту), то вычеркнутое название города занимало 22 - 2 = 20 байт.

Если один символ занимает 2 байта, то 20 байт — это 20 / 2 = 10 символов.

Теперь найдем в списке город, состоящий из 10 букв:

  • Уфа — 3 буквы
  • Азов — 4 буквы
  • Пермь — 5 букв
  • Белово — 6 букв
  • Вологда — 7 букв
  • Камбарка — 8 букв
  • Соликамск — 9 букв

В списке нет города, состоящего из 10 букв. Повторим расчет:

Если ученик вычеркнул город, две запятые и два пробела (между названиями городов), то общее количество удаленных символов (без учета букв города) составляет 2 запятые + 2 пробела = 4 символа. Каждый символ кодируется 2 байтами, значит, 4 символа занимают 4 * 2 = 8 байт.

Размер города, который был вычеркнут, составляет 22 байта (общее уменьшение) - 8 байт (запятые и пробелы) = 14 байт.

Количество букв в названии вычеркнутого города: 14 байт / 2 байта/символ = 7 символов.

Теперь ищем в списке город из 7 букв:

  • Уфа — 3 буквы
  • Азов — 4 буквы
  • Пермь — 5 букв
  • Белово — 6 букв
  • Вологда — 7 букв
  • Камбарка — 8 букв
  • Соликамск — 9 букв

Вычеркнутым городом является Вологда.

Ответ: Вологда