Вова написал список школьных предметов, включая ОБЖ, химию, физику, алгебру, биологию, географию, литературу и информатику, в кодировке КОИ-8. Ученик решил удалить одно название предмета из списка и исправить лишние запятые и пробелы, чтобы два пробела не идти подряд. Размер нового предложения в кодировке оказался на 11 байт меньше, чем размер исходного предложения. Какое название предмета было вычеркнуто?
Проверенное решение:
Инструкция: Переведем условие задачи. Вова написал список школьных предметов в кодировке КОИ-8, включая ОБЖ, химию, физику, алгебру, биологию, географию, литературу и информатику. Ученик решил удалить одно название предмета из списка и исправить лишние запятые и пробелы так, чтобы два пробела не идти подряд. Размер нового предложения в кодировке оказался на 11 байт меньше, чем размер исходного предложения. Найдите название предмета, которое было вычеркнуто.
У нас есть список предметов, и мы находим его исходный размер, затем удаляем один предмет и исправляем лишние запятые и пробелы. Далее мы сравниваем размеры исходного и измененного предложений. Если размер нового предложения на 11 байт меньше, то мы знаем, что удаленный предмет имеет размер 11 байт.
Пример использования:
Изначальный список предметов: «ОБЖ, химия, физика, алгебра, биология, география, литература, информатика»
Измененный список предметов: «ОБЖ, химия, физика, биология, география, литература, информатика»
Размер исходного предложения: 103 байта
Размер измененного предложения: 92 байта
Изменение размера: 103 — 92 = 11 байт
Следовательно, удаленный предмет имеет размер 11 байт.
Совет:
Если в задаче дано количество байт, очень важно быть внимательным и не делать предположений о пробелах и символах, которые могут использоваться в кодировке.
Упражнение:
У нас есть следующий список предметов: «математика, физика, география, история, русский язык, литература, информатика». Размер этого предложения в кодировке UTF-8 составляет 95 байт. Удалите один предмет и приведите окончательный вариант списка, чтобы размер стал на 9 байт меньше. Какой предмет был удален?