Задание №13 ЕГЭ

Задача №1. При регистрации в компьютерной системе каждому пользователю выдаётся пароль, состоящий из 9 символов. Из соображений информационной безопасности каждый пароль должен содержать хотя бы 1 десятичную цифру, как прописные, так и строчные латинские буквы, а также не менее 1 символа из 6-символьного набора: «&», «#», «$», «*», «!», «@». В базе данных для хранения сведений о каждом пользователе отведено одинаковое и минимально возможное целое число байт. При этом используют посимвольное кодирование паролей, все символы кодируют одинаковым и минимально возможным количеством бит. Кроме собственно пароля, для каждого пользователя в системе хранятся дополнительные сведения, для чего выделено целое число байт; это число одно и то же для всех пользователей.

Для хранения сведений о 20 пользователях потребовалось 500 байт. Сколько байт выделено для хранения дополнительных сведений об одном пользователе? В ответе запишите только целое число – количество байт.

Примечание. В латинском алфавите 26 букв.

Решение

 

Длина пароля 9 символов, в котором должна быть одна цифра или несколько, а так же один или более спецсимвол.

У нас на 20 пользователей потребовалось 500 байт.

Посчитаем количество символов, из которых может состоять пароль:

цифры: 10 шт.;
буквы: 26 шт. строчных + 26 шт. заглавных;
доп. символов: 6 шт.

Итого: 10 + 26 * 2 + 6 = 68 символов

С помощью N бит можно закодировать 2^N паролей, значит подберём  2^6<68<2^7, нам
6 бит не подходит, так как мало, поэтому нам нужно 7 бит.

Посчитаем, какое количество битов нам нужно на 1 пароль: 9 символов * 7 бит = 63 бит ≈ 8 байт, так как у нас 20 пользователей, то 20 * 8 = 160 байт.

Всего выделено 500 байт на 20 пользователей, значит
500 байт – 160 байт = 340 байт – остаётся памяти, распределили её на 20 пользователей:
340 : 20 = 17 байт – приходится на каждого пользователя дополнительной информации.

Ответ: 17.