Привет! Давай разберемся с твоим заданием.
Ты правильно сосредоточился на том, чтобы определить, сколько бит нужно для хранения идентификатора. Однако давай посмотрим на то, как ты пришел к своему ответу и почему он отличается от правильного.
Суть задачи: В задании говорится, что идентификатор состоит из 20 символов, где первый и последний символ — буквы (всего 18 букв), а остальные — цифры (всего 10 цифр).
Определение количества бит: Для кодирования 18 букв нам нужно 5 бит (потому что 2^5=32, а 2^4=16 — не хватает). Для 10 цифр нужен 4 бита (также по аналогии).
Общий подсчет бит:
- Первые и последние символы: 2 буквы по 5 бит = 10 бит
- Остальные 18 символов — цифры: 18 символов по 4 бит = 72 бита
- Всего: 10 бит + 72 бита = 82 бита
Перевод в байты: Так как байт состоит из 8 бит, чтобы округлить общее количество бит до целого числа байт, необходимо использовать больше 82 бит, чтобы получить кратное 8.
- 82 бита — это 10,25 байт, но так как мы не можем использовать дробное количество байт, мы округляем до 11 байт (это минимальное целое число, которое больше).
Общий объем для 35 паролей: 11 байт * 35 паролей = 385 байт.
Твой ответ был 420, потому что, возможно, ты округлил числа по-другому или неверно посчитал количество бит, необходимых для хранения идентификатора.
Теперь о округлении: всегда округляй до ближайшего большего целого числа, когда дело касается байтов, учитывая, что каждый байт содержит 8 бит.
Как тебе мой разбор? Поставь, пожалуйста, лайк или дизлайк!