Контрольные задания > 2. В кодировке UTF-16 каждый символ кодируется 16 битами. Влад написал текст (в нем нет лишних пробелов):
«Репа, тыква, огурец, артишок, патиссон, картофель – овощи».
Ученик вычеркнул из списка название одного из овощей. Заодно он вычеркнул ставшие лишними запятые и пробелы – два пробела не должны идти подряд. При этом размер нового предложения в данной кодировке оказался на 22 байта меньше, чем размер исходного предложения. Напишите в ответе вычеркнутое название овоща.
Вопрос:
2. В кодировке UTF-16 каждый символ кодируется 16 битами. Влад написал текст (в нем нет лишних пробелов):
«Репа, тыква, огурец, артишок, патиссон, картофель – овощи».
Ученик вычеркнул из списка название одного из овощей. Заодно он вычеркнул ставшие лишними запятые и пробелы – два пробела не должны идти подряд. При этом размер нового предложения в данной кодировке оказался на 22 байта меньше, чем размер исходного предложения. Напишите в ответе вычеркнутое название овоща.
Ответ:
В кодировке UTF-16 каждый символ занимает 2 байта (16 бит).
Изначально в строке:
* Слов: 8
* Запятых: 7
* Пробелов после запятых: 7
* Тире: 1
* Пробелов до и после тире: 2
* Пробелов между словами: 6
После удаления одного овоща (слова), одной запятой и одного пробела, стало на 22 байта меньше.
Значит, длина овоща + запятая + пробел = 22 байта.
Длина овоща = 22 / 2 - 1 - 1 = 9 символов.
Перечислим длину каждого слова в списке:
репа - 4
тыква - 5
огурец - 6
артишок - 7
патиссон - 8
картофель - 9
овощи - 5
Длина слова "картофель" равна 9 символам. Следовательно, ученик вычеркнул слово "картофель".
Ответ: картофель