Вопрос:

1. В кодировке UTF-32 каждый символ кодируется 32 битами. Миша написал текст (в нём нет лишних пробелов): «Айва, Алыча, Генипа, Гуарана, Курбарил, Мангостан — фрукты». Ученик вычеркнул из списка название одного из фруктов. Заодно он вычеркнул ставшие лишними запятые и пробелы — два пробела не должны идти подряд. При этом размер нового предложения в данной кодировке оказался на 36 байтов меньше, чем размер одного предложения. Напишите в ответе вычеркнутое название фрукта.

Ответ:

Решение:

1. Каждый символ в кодировке UTF-32 занимает 32 бита, что равно 4 байтам (32 бита / 8 бит/байт = 4 байта).

2. Миша вычеркнул название одного фрукта, запятую и пробел после него, а также лишний пробел между словами. Это означает, что общее количество удаленных символов равно 1 (фрукт) + 1 (запятая) + 1 (пробел) + 1 (лишний пробел) = 4 символа.

3. Уменьшение размера текста составило 36 байтов. Это произошло из-за удаления 4 символов. Следовательно, каждый удаленный символ (фрукт, запятая, пробел) занимает 36 байтов / 4 символа = 9 байтов. Это противоречит условию, что каждый символ в UTF-32 занимает 4 байта. Давайте переосмыслим условие:

Условие гласит, что вычеркнуты название фрукта, запятая и пробел, а также вычеркнуты ставшие лишними запятые и пробелы — два пробела не должны идти подряд. Это значит, что если после названия фрукта шла запятая и пробел, то эти два элемента (запятая + пробел) тоже были удалены, потому что они стали лишними. Также был удален еще один лишний пробел, который ранее разделял фрукты.

Посчитаем общее количество удаленных байтов: 36 байтов.

Так как каждый символ в UTF-32 занимает 4 байта, общее количество удаленных символов равно: 36 байтов / 4 байта/символ = 9 символов.

Удаленные элементы: 1 название фрукта + 1 запятая + 1 пробел + 1 лишний пробел = 4 элемента. Это не 9 символов.

Давайте перечитаем внимательно: "Ученик вычеркнул из списка название одного из фруктов. Заодно он вычеркнул ставшие лишними запятые и пробелы — два пробела не должны идти подряд."

Рассмотрим пример: «Айва, Алыча, Генипа, Гуарана, Курбарил, Мангостан — фрукты».

Если вычеркнуто название фрукта, например, «Айва», то удаляется:

  • «Айва» (5 символов)
  • «,» (1 символ)
  • « » (1 пробел)

Итого: 7 символов. Текст становится «Алыча, Генипа, Гуарана, Курбарил, Мангостан — фрукты».

В этом случае, запятая и пробел после «Айва» были удалены. А также, если был лишний пробел, то он тоже удалился. Если считать, что между каждым фруктом был один пробел, и один лишний пробел был удален, то всего было удалено:

1 (фрукт) + 1 (запятая) + 1 (пробел после фрукта) + 1 (лишний пробел) = 4 элемента.

Возвращаемся к байтам. 36 байт / 4 байта/символ = 9 символов было удалено.

Фрукты в списке:

  • Айва (4 символа)
  • Алыча (5 символов)
  • Генипа (6 символов)
  • Гуарана (7 символов)
  • Курбарил (8 символов)
  • Мангостан (9 символов)

Если удалить название фрукта, запятую и пробел, то это:

  • Айва (4) + 1 (запятая) + 1 (пробел) = 6 символов.
  • Алыча (5) + 1 (запятая) + 1 (пробел) = 7 символов.
  • Генипа (6) + 1 (запятая) + 1 (пробел) = 8 символов.
  • Гуарана (7) + 1 (запятая) + 1 (пробел) = 9 символов.
  • Курбарил (8) + 1 (запятая) + 1 (пробел) = 10 символов.
  • Мангостан (9) + 1 (тире) + 1 (пробел) = 11 символов (тире тоже считается символом).

Условие: "два пробела не должны идти подряд" - это значит, что если удалили название фрукта, и после него была запятая и пробел, то это уже два пробела не идут подряд. Если там был еще один пробел, то он лишний.

Итак, удалено 9 символов. Каждый символ = 4 байта. Это означает, что удалено 9 символов.

Из списка: "Айва, Алыча, Генипа, Гуарана, Курбарил, Мангостан".

Если удалить «Гуарана» (7 символов), запятую (1 символ) и пробел (1 символ), то получается 9 символов. Уменьшение размера предложения будет 9 символов * 4 байта/символ = 36 байтов. Это соответствует условию.

После удаления «Гуарана, » предложение станет: «Айва, Алыча, Генипа, Курбарил, Мангостан — фрукты». В этом случае, между «Генипа» и «Курбарил» теперь нет лишнего пробела, что тоже соответствует условию.

Поэтому, вычеркнутое название фрукта — «Гуарана».

Ответ: Гуарана.

Подать жалобу Правообладателю