При регистрации в государственной системе каждому пользователю выдаётся пароль, состоящий из 32 символов и содержащий только символы из 129-символьного набора. В базе данных для хранения сведений о каждом пользователе отведено одинаковое и минимально возможное целое число байт. При этом используют посимвольное кодирование паролей, все символы кодируют одинаковым и минимально возможным количеством бит. Кроме собственно пароля, для каждого пользователя в системе хранятся дополнительные сведения. Определите объём памяти (в байтах), необходимый для хранения дополнительных сведений для каждого пользователя, если известно, что объём памяти, необходимый для хранения сведений о 460 пользователей равен 2 МБ.
Для каждого пользователя выделяется 32 символа, которые кодируются минимальным количеством бит. Таким образом, для хранения пароля одного пользователя необходимо 32 символа * минимальное количество бит на символ. Так как в наборе 129 символов, то минимальное количество бит на символ равно 7 (2^7 > 129). Значит, для хранения пароля одного пользователя необходимо 32 * 7 = 224 бита. Дополнительные сведения для каждого пользователя хранятся в базе данных, для которой отведено одинаковое и минимально возможное целое число байт. Пусть этот объем памяти равен Х байт. Тогда для хранения сведений о 460 пользователей необходимо 460 * (Х + 224) байт. Из условия задачи известно, что объем памяти, необходимый для хранения сведений о 460 пользователей, равен 2 МБ. Переведем это значение в байты: 2 МБ = 2 * 1024 * 1024 байт = 2097152 байт. Тогда получаем уравнение: 460 * (Х + 224) = 2097152 Решая его относительно Х, получаем: Х = (2097152 - 460 * 224) / 460 = 168 байт. Таким образом, для хранения дополнительных сведений для каждого пользователя необходимо 168 байт.