Вопрос:

1. Тип 1 № 10309 В одной из кодировок Unicode каждый символ кодируется 16 битами. Ваня написал текст (в нем нет лишних пробелов): «D, Io, Ada, Java, Swift, Python, ColdFusion — языки программирования». Ученик вычеркнул из списка название одного из языков программирования. Заодно он вычеркнул ставшие лишними запятые и пробелы — два пробела не должны идти подряд. При этом размер нового предложения в данной кодировке оказался на 10 байт меньше, чем размер исходного предложения. Напишите в ответе вычеркнутое название языка программирования.

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

Ответ:

Обоснование:

Каждый символ в кодировке Unicode занимает 16 бит, что равно 2 байтам. Исходный текст содержал 8 слов (языков программирования) и 7 знаков препинания (запятые и пробелы между ними). Итого 8 слов + 7 знаков = 15 символов. Однако, по условию, в тексте нет лишних пробелов, а запятые и пробелы удалены вместе с вычеркнутым словом. Это означает, что к каждому слову (кроме последнего) добавлялись запятая и пробел. Получается 7 пар (запятая + пробел). Таким образом, исходный текст без вычеркивания имел 8 слов + 7 (запятая+пробел) = 15 символов. Если ученик вычеркнул одно слово, то он также удалил соответствующие запятую и пробел (или два пробела, если это было между словами). Размер уменьшился на 10 байт, что составляет 5 символов (10 байт / 2 байта/символ = 5 символов). Таким образом, вычеркнутое слово и связанные с ним знаки (запятая и пробел) в сумме занимали 5 символов.

Рассмотрим длины названий языков программирования:

  • Io (2 символа)
  • Ada (3 символа)
  • Java (4 символа)
  • Swift (5 символов)
  • Python (6 символов)
  • ColdFusion (10 символов)

Если удалить слово, то удаляется само слово, а также запятая и пробел, которые были до него (если это не первое слово) и после него (если это не последнее слово). Условие «два пробела не должны идти подряд» и «вычеркнул ставшие лишними запятые и пробелы» говорит о том, что удалялись пары: «запятая + пробел».

Если вычеркнуто слово, занимающее N символов, и удаляется одна запятая и один пробел, то общее уменьшение составит N+2 символа. Нам нужно, чтобы N+2 = 5, следовательно N = 3. Единственное слово из списка, состоящее из 3 символов, это 'Ada'.

Ответ: Ada

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

Похожие