Задание 11. Информатика. ЕГЭ. Апробация. 05.03.2025

Просмотры: 750
Изменено: 5 марта 2025

На предприятии каждой изготовленной детали присваивают серийный номер, содержащий десятичные цифры, \(52\) латинские буквы (с учётом регистра) и символы из \(1988\)-символьного специального алфавита. В базе данных для хранения каждого серийного номера отведено одинаковое и минимально возможное число байт. При этом используется посимвольное кодирование серийных номеров, все символы кодируются одинаковым и минимально возможным числом бит. Известно, что для хранения \(1550\) серийных номеров отведено не более \(356\) Кбайт памяти. Определите максимально возможную длину серийного номера. В ответе запишите только целое число.

Решение:

Так как \(10 + 52 + 1988 = 2050 > 2048 = 2^{11},\) то для кодирования одного символа серийного номера требуется как минимум \(12\) бит.

Python


from math import ceil
for n in range(1, 100_000):
    mem = n * 12 * 1550
    if ceil(mem / 8) > 356 * 2**10:
        print(n - 1)
        break

Ответ: \(156\)