Задание №11 — Количество информации
При регистрации в компьютерной системе каждому объекту присваивается идентификатор, состоящий из 704 символов и содержащий только 26 латинских букв и символы из 2025-символьного специального алфавита. В базе данных для хранения каждого идентификатора отведено одинаковое и минимально возможное целое число байт. При этом используют посимвольное кодирование идентификаторов, все символы кодируют одинаковым и минимально возможным количеством бит.
Определите объём памяти (в Кбайт), необходимый для хранения 3840 идентификаторов. В ответе запишите только целое число — количество Кбайт.
Правильный ответ
3960
Пояснение
Решение:
1. Мощность алфавита. Латинских букв 26, плюс 2025 символов специального алфавита: различный символ.
2. Бит на символ. Ищем минимальное с условием . Здесь — не хватает всего трёх символов, поэтому берём и бит. Это главная ловушка задачи.
3. Байт на идентификатор. В идентификаторе 704 символа: бит, а — делится нацело, значит, на идентификатор отводится ровно 1056 байт.
4. Общий объём. байт, что составляет Кбайт.
import math alfavit = 26 + 2025 bit = math.ceil(math.log2(alfavit)) bayt = math.ceil(704 * bit / 8) print(3840 * bayt // 1024)Программа печатает 3960.Ответ: 3960