Давай разберемся, сколько места нужно для хранения пароля.
- Количество возможных символов:
- Цифры: 10 (0-9)
- Буквы латинского алфавита: 26
- Специальные символы: 6 (., $$, #, @, %, &)
- Всего символов: 10 + 26 + 6 = 42
- Минимальное количество бит на символ:
- Нам нужно закодировать 42 символа.
- Находим ближайшую степень двойки, которая больше или равна 42.
- $$2^5 = 32$$ (не подходит)
- $$2^6 = 64$$ (подходит)
- Значит, для кодирования одного символа нужно 6 бит.
- Количество бит на пароль:
- Длина пароля: 9 символов.
- Всего бит на пароль: 9 символов * 6 бит/символ = 54 бита.
- Количество байт на пароль:
- В одном байте 8 бит.
- Байт на пароль: 54 бита / 8 бит/байт = 6.75 байт.
- Так как выделяется целое число байт, округляем до ближайшего большего целого: 7 байт на пароль.
- Общее количество байт, выделенное для 20 пользователей: 500 байт.
- Общее количество байт, выделенное для паролей 20 пользователей:
- 20 пользователей * 7 байт/пароль = 140 байт.
- Количество байт, выделенное для дополнительных сведений:
- Общее количество байт - байты на пароли = 500 байт - 140 байт = 360 байт.
- Количество байт, выделенное для дополнительных сведений на одного пользователя:
- 360 байт / 20 пользователей = 18 байт/пользователь.
Ответ: 18