Алгоритм решения задания 14. Часть 1
Учимся решать 15 задания первого типа
Читать
На предприятии каждой изготовленной детали присваивают серийный номер, состоящий из 246 символов. В базе данных для хранения каждого серийного номера отведено одинаковое и минимально возможное число байт. При этом используется посимвольное кодирование серийных номеров, все символы кодируются одинаковым и минимально возможным числом бит. Известно, что для хранения 703 569 серийных номеров доступно не более 77 Мбайт памяти.
Определите максимально возможную мощность алфавита, используемого для записи серийных номеров.
В ответе запишите только целое число.
from math import ceil, log2
symbols = 246
serial_nums = 703_569
memory_usage = 77 * 2 ** 20
for code in range(1, 10)[::-1]:
bits = ceil(log2(code))
bytes = ceil(symbols * bits / 8)
if serial_nums * bytes < memory_usage:
print(code)
break
