На предприятии каждой изготовленной детали присваивают серийный номер, состоящий из \(155\) символов. В базе данных для хранения каждого серийного номера отведено одинаковое и минимально возможное число байт. При этом используется посимвольное кодирование серийных номеров, все символы кодируются одинаковым и минимально возможным числом бит. Известно, что для хранения \(202~303\) серийных номеров отведено не более \(41\) Мбайт памяти. Определите максимально возможную мощность алфавита, используемого для записи серийных номеров. В ответе запишите только целое число.
Решение:
Пусть для кодирования одного символа используется \(n\) бит. Тогда максимальная мощность алфавита \(P = 2^n.\) Получаем следующее ограничение $$202~303 \cdot \left\lceil \frac{155 \cdot n}{8} \right\rceil \leqslant 41 \cdot 2^{20}.$$ Чтобы найти \(n\) и \(P,\) напишем программу
Python
from math import ceil
for n in range(100, 0, -1):
if 202_303 * ceil(155 * n / 8) <= 41 * 2**20:
print(2**n)
break
Ответ: \(1024\)
Эффективно готовьтесь к ЕГЭ по информатике с новым тренажёром, эмулирующем работу станции КЕГЭ, которая используется на реальном экзамене