Задание №1 — Теоретические основы информатики
В кодировке Windows-1251 каждый символ кодируется 8 битами.
Ученик хотел написать текст (в нём нет лишних пробелов):
«Скользя по утреннему снегу,
Друг милый, предадимся бегу
Нетерпеливого коня
И навестим поля пустые…»
Одно из слов ученик написал два раза подряд, поставив между одинаковыми словами один пробел. При этом размер написанного предложения в данной кодировке оказался на 8 байт больше, чем размер нужного предложения. Напишите в ответе лишнее слово.
Правильный ответ
Скользя
Пояснение
Решение.
1. Сначала определим информационный вес одного символа в данной кодировке. По условию задачи каждый символ кодируется битами. Переведём это значение в байты, так как разница в размере текста дана в байтах:
.
Следовательно, вес одного символа .
2. По условию, ученик написал одно слово дважды, добавив между ними один пробел. Это привело к тому, что размер предложения увеличился на . Обозначим количество лишних символов (лишнее слово плюс один пробел) как .
3. Используем формулу для расчёта объёма информации: , где — общее увеличение размера текста. Подставим известные значения:
.
Отсюда находим общее количество лишних символов:
.
4. В эти символов входит лишнее слово и один пробел, который ученик поставил между повторяющимися словами. Чтобы найти количество букв в самом слове, нужно из общего количества символов вычесть один пробел:
.
5. Теперь найдём в исходном тексте слово, состоящее из букв:
«Скользя» — букв (С-к-о-л-ь-з-я);
«по» — буквы;
«утреннему» — букв;
«снегу» — букв;
«Друг» — буквы;
«милый» — букв;
«предадимся» — букв;
«бегу» — буквы;
«Нетерпеливого» — букв;
«коня» — буквы;
«И» — буква;
«навестим» — букв;
«поля» — буквы;
«пустые» — букв.
Словом, состоящим из букв, является «Скользя».
Ответ: Скользя.
Источник: ФИПИ