Верное и неверное решения одной задачки А11

Задачка из сборника Полякова (А11, 25 задача):

25. В некоторой стране автомобильный номер состоит из 8 символов. Первый символ – одна из 26 латинских букв, остальные семь – десятичные цифры. Пример номера – A1234567. Каждый символ кодируется минимально возможным количеством бит, а каждый номер – одинаковым и минимально возможным количеством байт. Определите объем памяти, необходимый для хранения 30 автомобильных номеров.

1) 180 байт     2) 150 байт      3) 120 байт       4) 250 байт 

 

Решение 1 (неверное). Всего возможных вариантов номеров получается 26*10 000 000 = 260 000 000. Для кодирования такого количества требуется 28 бит. 2 в 28 степени дает 268 435 456.

28 бит округляем до минимального целого количества байт и получаем 32 бита = 4 байта.  Ответ 30*4 = 120 байт.

Решение 2. для кодирование первого символа требуется 5 бит, и 4 бита для кодирования каждого из остальных 7 символов. В сумме получаем 5+4+4+4+4+4+4+4=33 бита. Округляем до целого кол-ва байт = 40 бит = 5 байт. Ответ 30*5 байт = 150 байт.

Так и хочется сказать, что первое  решение верное. 

Теги: 

А как можно получить ответы 180 и 250 байт?

--------
Ильфат Рифатович Исмагилов

180 байт можно получить, если спутать 8 * 4 = 32 и 2^5 = 32.

 А откуда вы взяли что для кодирования первого символа требуется 5 бит, а 4 для остальных семи. Извините не поняла. Можно поподробнее?

Мокшина Л.Н.

Исходя из условия "Первый символ – одна из 26 латинских букв" ,  используя формулу N=2i 

... и  условия " Каждый символ кодируется минимально возможным количеством бит, "    получаем 32=25

1 символ = 5 бит.  

Т.е. из 32 пятибитных кодов для кодирования "латнских букв" используются только 26.

То же самое для кодирования десяти цифр требуется 4 бита.

--------
Ильфат Рифатович Исмагилов

Спасибо! Мне было непонятно другое :  "каждый номер кодируется одинаковым минимально возможным количеством байт". Мне думается, что условие задачи детям также как и мне покажется  непонятным.

Мокшина Л.Н.

мне кажется задачка достаточно интересной именно из-за того, что приучает внимательно читать условие: различить, где номер (а в условии сказано о номерах автомобилей в целом), где код символа, а где код числа. Очень даже приемлемо!

!

Область интересов: