Информатика. ЕГЭ
Задания для подготовки
Задачи разных лет из реальных экзаменов, демо-вариантов, сборников задач и других источников
Задание 11. Информатика. ЕГЭ. Основная волна. Пересдача. 03.07.2025
- Просмотры: 7984
- Изменено: 21 августа 2025
На предприятии каждой изготовленной детали присваивают серийный номер, содержащий десятичные цифры, \(52\) латинские буквы (с учётом регистра) и символы из \(500\)-символьного специального алфавита. В базе данных каждый серийный номер занимает одинаковое и минимально возможное число байт. При этом используется посимвольное кодирование серийных номеров, все символы кодируются одинаковым и минимально возможным числом бит. Известно, что для хранения \(45~877\) серийных номеров требуется более \(49\) Мбайт памяти. Определите минимально допустимую длину серийного номера. В ответе запишите только целое число.
Решение:
Алфавит символов для формирования серийного номера состоит из \(10 + 52 + 50 = 562\) символов. Для их кодирования требуется минимум \(\lceil \log_2 562 \rceil = 10\) бит. Пусть \(N\) — длина серийного номера. Тогда получаем следующее ограничение на \(N\) $$\left\lceil \frac{10 \cdot N}{ 8} \right\rceil \cdot 45877 \geqslant 49 \cdot 2^{20}.$$ Минимальное \(N,\) удовлетворяющее этому условию, легче всего найти программно
Python
from math import ceil
def f(N):
return ceil(10 * N / 8) * 45_877 >= 49 * 2**20
print(min(N for N in range(1, 1000) if f(N)))
Ответ: \(896\)
Обсуждение задания
Здесь пока нет ни одного комментария. Будьте первым!


