OpenFIPI 2.0
11
1
586133
На предприятии каждой изготовленной детали присваивают серийный номер, содержащий десятичные цифры и символы из 62-символьного специального алфавита. В базе данных каждый серийный номер занимает одинаковое и минимально возможное число байт. При этом используется посимвольное кодирование серийных номеров, все символы кодируются одинаковым и минимально возможным числом бит. Известно, что 5 895 222 серийных номера занимают более 23 Мбайт памяти. Определите минимально возможную длину серийного номера.
5
from math import ceil, log
for L in range(1, 1000): # длина
N = 10 + 62 # мощность алфавита
i = ceil(log(N, 2)) # вес одного символа
I = ceil(L * i / 8) # вес серийного номера
I = I * 5895222 / 1024 / 1024
if I > 23:
print(L)
break
Просмотреть отправленные ответы 586133