Вопрос:

В кодировке Windows-1251 каждый символ кодируется 8 битами. Коля написал текст (в нём нет лишних пробелов): «Уж, боа, удав, кобра, гадюка, медянка, анаконда — змеи». Ученик вычеркнул из списка название одного из животных. Заодно он вычеркнул ставшие лишними запятые и пробелы — два пробела не должны идти подряд. При этом размер нового предложения в данной кодировке оказался на 7 байт меньше, чем размер исходного предложения. Напишите в ответе вычеркнутое название животного.

Ответ:

Объяснение:

Каждый символ в кодировке Windows-1251 занимает 8 бит, что равно 1 байту. Новое предложение стало короче на 7 байт, значит, было удалено 7 символов. Ученик вычеркнул одно животное, а также лишние запятые и пробелы. Давайте посчитаем, сколько символов составляют названия животных и необходимые знаки препинания:

  • Уж — 2 символа.
  • боа — 3 символа.
  • удав — 4 символа.
  • кобра — 5 символов.
  • гадюка — 6 символов.
  • медянка — 7 символов.
  • анаконда — 8 символов.
  • змея — 4 символа.

После каждого слова, кроме последнего, идет запятая и пробел (2 символа). Если бы мы удалили животное и все связанные с ним запятые и пробелы, то количество удаленных символов могло бы быть:

  • Удаление 'Уж' (2 симв.) + запятая + пробел (2 симв.) = 4 символа.
  • Удаление 'боа' (3 симв.) + запятая + пробел (2 симв.) = 5 символов.
  • Удаление 'удав' (4 симв.) + запятая + пробел (2 симв.) = 6 символов.
  • Удаление 'кобра' (5 симв.) + запятая + пробел (2 симв.) = 7 символов.
  • Удаление 'гадюка' (6 симв.) + запятая + пробел (2 симв.) = 8 символов.
  • Удаление 'медянка' (7 симв.) + запятая + пробел (2 симв.) = 9 символов.
  • Удаление 'анаконда' (8 симв.) + запятая + пробел (2 симв.) = 10 символов.

Удаление последнего слова 'змеи' не сопровождается запятой и пробелом, а только тире и пробелом (2 символа), но вычеркнуто животное, а не тире. В условии сказано, что два пробела не должны идти подряд. Это значит, что если вычеркнуть слово, то между оставшимися элементами может появиться два пробела, если они были по бокам от вычеркнутого слова, и их надо удалить. Или, если вычеркивается слово, то убираются запятая и пробел после него.

Если было удалено 7 байт (символов), то это соответствует удалению животного, название которого состоит из 5 символов ('кобра'), и двух пар «запятая + пробел» (по 2 символа каждая).

Исходный текст: «Уж, боа, удав, кобра, гадюка, медянка, анаконда — змеи»

Если удалить 'кобра': «Уж, боа, удав, гадюка, медянка, анаконда — змеи»

Удалено: 'к', 'о', 'б', 'р', 'а' (5 символов).

Удалены запятая и пробел после 'удав' (2 символа).

Удалены запятая и пробел после 'кобра' (2 символа).

Но из-за того, что 'кобра' вычеркнули, то между 'удав' и 'гадюка' должно быть 'запятая+пробел'.

Давайте пересчитаем удаленные символы: 5 (кобра) + 2 (запятая+пробел после удава) = 7 символов.

Рассмотрим удаление 'кобра' (5 символов). Также удаляем запятую и пробел после него. Это 5 + 2 = 7 символов. В этом случае предложение станет: «Уж, боа, удав, гадюка, медянка, анаконда — змеи». Проверим, что два пробела не идут подряд. Между 'удав' и 'гадюка' после удаления 'кобра' будет запятая и пробел. Два пробела подряд не будет.

Ответ: кобра

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

Похожие