ЕГЭ, ОГЭ, программирование и робототехника в Калининграде

№ 11039. Основная волна 2025

На предприятии каждой изготовленной детали присваивают серийный номер, состоящий из 172 символов. В базе данных каждый серийный номер занимает одинаковое и минимально возможное число байт. При этом используется посимвольное кодирование серийных номеров, все символы кодируются одинаковым и минимально возможным числом бит. Известно, что для хранения 356 984 серийных номеров потребовалось не менее 54 Мбайт памяти.

Определите минимально возможную мощность алфавита, используемого для записи серийных номеров.

В ответе запишите только целое число.

from math import ceil, log2

symbols = 172
serial_nums = 356_984
memory_usage = 54 * 2 ** 20

for code in range(1, 1000):
    bits = ceil(log2(code))
    bytes = ceil(symbols * bits / 8)
    if serial_nums * bytes >= memory_usage:
        print(code)
        break
Разберём это задание на бесплатном пробном занятии

Преподаватель покажет, как решать такие задачи, и подскажет, с чего начать подготовку. Группы до 8 человек, очно в Калининграде и онлайн.

Записаться на пробное занятие