Вопрос:

В одной из кодировок Unicode каждый символ кодируется 16 битами. Ученик хотел написать текст (в нём нет лишних пробелов): «Ирис, астра, вереск, василёк, гвоздика, дербенник, купальница, ежеголовник – травянистые растения средней полосы России». Ученик написал два раза подряд название одного растения, добавив необходимые запятую и пробел. При этом размер нового предложения в данной кодировке оказался на 16 байт больше, чем размер нужного предложения. Напишите в ответе слово, написанное дважды.

Фотография

Ответ ассистента

### Решение задачи №1 1. В Unicode 16 бит на символ — это $16 / 8 = 2$ байта на символ. 2. Увеличение размера составило 16 байт. Это значит, что добавлено $16 / 2 = 8$ символов. 3. Добавление включает: само слово (N символов), запятую (1 символ) и пробел (1 символ). Итого: $N + 1 + 1 = 8$. 4. Отсюда $N = 6$. Ищем слово из 6 букв в списке: «Ирис» (4), «астра» (5), «вереск» (6), «василёк» (7), «гвоздика» (8), «дербенник» (9), «купальница» (10), «ежеголовник» (11). 5. Подходит слово «вереск». **Ответ: вереск** ### Решение задачи №2 Разбиваем двоичную строку по 5 бит (так как код каждой буквы имеет длину 5): 1. 10011 — **Т** 2. 01001 — **И** 3. 10011 — **Т** 4. 01111 — **О** 5. 01001 — **И** 6. 01101 — **М** 7. 01110 — **Н** Полученное сообщение: ТИТОИМН. Повторяющиеся буквы: Т и И. **Ответ: ТИ**

Другие решения

Что ещё задавали пользователи