11.01 Коды без дополнительной информации
Готовиться с нами - ЛЕГКО!
Ошибка.
Попробуйте повторить позже
При регистрации в компьютерной системе каждому объекту присваивается идентификатор, состоящий из 100 символов и содержащий только десятичные цифры и символы из 1020-символьного специального алфавита. В базе данных для хранения каждого идентификатора отведено одинаковое и минимально возможное целое число байт. При этом используется посимвольное кодирование идентификаторов, все символы кодируются одинаковым и минимально возможным количеством бит. Определите объём памяти (в байтах), необходимый для хранения 1000 идентификаторов. В ответе запишите только целое число – количество байт.
Для начала определим сколько бит нужно выделить, чтобы закодировать все символы алфавита: .
Для кодирования всего алфавита нам понадобится 11 бит.
Теперь определим сколько бит нужно выделить на один идентификатор: (бит). Переведем данное
значение в байты:
(байт). Если округлим в меньшую сторону, то нам не хватит памяти, чтобы
закодировать весь идентификатор, значит, округляем в большую сторону.
Определим сколько байт нужно выделить на хранение 1000 идентификаторов: (байт). Ответ:
138000.
Ошибка.
Попробуйте повторить позже
Личный номер участника конкурса состоит из 13 символов: семи цифр, за которыми следуют шесть букв. Допустимыми символами считаются 10 цифр и 10 заглавных букв: Б, Г, Ж, К, П, С, Ф, Ц, Ь, Я. Для хранения каждой из цифр используется одинаковое и наименьшее возможное количество бит. Аналогично, для хранения каждой из букв используется одинаковое и наименьшее возможное количество бит. При этом количество бит, используемых для хранения одной буквы и одной цифры могут быть разными. Для хранения каждого номера используется одинаковое и минимально возможное количество байт.
Сколько байт памяти потребуется для хранения 780 номеров для всех участников? Номера хранятся без разделителей.
Для начала определим сколько бит нужно выделить, чтобы закодировать все символы алфавита: . Для
кодирования всего алфавита нам понадобится 4 бит. Затем определим сколько бит нужно выделить, чтобы
закодировать все цифры:
.Для кодирования всех цифр нам понадобится 4 бита.
Затем определим сколько бит нужно выделить для одного номера: (бит). Переведем данное значение в
байты:
(байт). Если округлим в меньшую сторону, то нам не хватит памяти, чтобы закодировать весь номер,
значит, округляем в большую сторону.
Определим сколько байт нужно выделить для 780 номеров: (байт). Ответ: 5460.
Ошибка.
Попробуйте повторить позже
При регистрации в компьютерной системе каждому объекту присваивается пароль, состоящий из 48 символов и содержащий только десятичные цифры и символы из 400-символьного специального алфавита.
В базе данных для хранения каждого пароля отведено одинаковое и минимально возможное целое число байт. При этом используется посимвольное кодирование паролей, все символы кодируются одинаковым и минимально возможным количеством бит.
Определите объём памяти (в Кбайт), необходимый для хранения 57344 паролей. В ответе запишите только целое число – количество Кбайт.
Для начала определим сколько бит нужно выделить, чтобы закодировать все символы алфавита: . Для
кодирования всего алфавита нам понадобится 9 бит.
Теперь определим сколько бит нужно выделить на один идентификатор: (бит). Переведем данное
значение в байты:
(байт).
Определим сколько байт нужно выделить на хранение 57344 паролей и переведём данное значение в Кбайт:
(Кбайт). Ответ: 3024.
Ошибка.
Попробуйте повторить позже
Личный номер участника конкурса состоит из 13 символов: семи цифр, за которыми следуют шесть букв. Допустимыми символами считаются 10 цифр и 10 заглавных букв: Б, Г, Ж, К, П, С, Ф, Ц, Ь, Я. Для хранения каждой из цифр используется одинаковое и наименьшее возможное количество бит. Аналогично, для хранения каждой из букв используется одинаковое и наименьшее возможное количество бит. При этом количество бит, используемых для хранения одной буквы и одной цифры могут быть разными. Для хранения каждого номера используется одинаковое и минимально возможное целое количество байт.
Сколько байт памяти потребуется для хранения 207 номеров для всех участников? Номера хранятся без разделителей.
Для начала определим сколько бит нужно выделить, чтобы закодировать все символы алфавита: . Для
кодирования всего алфавита нам понадобится 4 бит. Затем определим сколько бит нужно выделить, чтобы
закодировать все цифры:
. Для кодирования всех цифр нам понадобится 4 бита.
Затем определим сколько бит нужно выделить для одного номера: (бит). Переведем данное значение в
байты:
(байт). Если округлим в меньшую сторону, то нам не хватит памяти, чтобы закодировать весь номер,
значит, округляем в большую сторону.
Определим сколько байт нужно выделить для 207 номеров: (байт). Ответ: 1449.
Ошибка.
Попробуйте повторить позже
На предприятии каждой изготовленной детали присваивают серийный номер, содержащий десятичные цифры, и символы из 1015-символьного специального алфавита. В базе данных для хранения каждого серийного номера отведено одинаковое и минимально возможное число байт. При этом используется посимвольное кодирование серийных номеров, все символы кодируются одинаковым и минимально возможным числом бит. Известно, что для хранения 776 серийных номеров отведено не более 312 Кбайт памяти. Определите максимально возможную длину серийного номера. В ответе запишите только целое число.
Для начала определим количество бит, необходимых для кодирования алфавита. В алфавите 1015 символов и 10 цифр, то есть 1025 символов. 10 бит недостаточно, так как их хватит закодировать только 1024 символа, поэтому мы берём 11 бит для кодирования. Теперь посчитаем сколько бит занимает 1 серийный номер в байтах, так как для хранения каждого серийного номера отведено одинаковое и минимально возможное число байт. Для этого переведём 312 кБайт в байты и поделим на 776:
Мы получили нецелое число байт необходимых для хранения одного серийного номера, округлим в меньшую сторону, так как если мы округлим в большую сторону, то получим, что объём памяти занимаемых 776 номерами будет превышать 312 кБайт памяти. Теперь полученное количество байт переведем в биты и поделим на количество бит, необходимых для кодирования алфавита:
Округлим полученное значение в меньшую сторону, так как если округлим в большую сторону, то получим, что один серийный номер будет весить больше 3293 бит, что приведёт к тому, что объём памяти занимаемых 776 номерами будет превышать 312 кБайт памяти. Получим, что 298 символа содержит серийный номер.
Ошибка.
Попробуйте повторить позже
При регистрации в компьютерной системе каждому объекту присваивается идентификатор, состоящий из 88 символов и содержащий только десятичные цифры и символы из 2047-символьного специального алфавита. В базе данных для хранения каждого идентификатора отведено одинаковое и минимально возможное целое число байт. При этом используется посимвольное кодирование идентификаторов, все символы кодируются одинаковым и минимально возможным количеством бит. Определите объём памяти (в Мбайт), необходимый для хранения 53 756 идентификаторов. В ответе запишите только целое число – количество Мбайт.
Для начала определим количество бит, необходимых для кодирования алфавита. В алфавите 2047 символов и 10 цифр, то есть 2057 символов. 11 бит будет недостаточно, так как их хватит закодировать только 2048 символов, поэтому мы берём 12 бит для кодирования. Следующим шагом посчитаем количество бит, которое занимает один идентификатор, для этого перемножим количество символов в идентификаторе и количество бит необходимых для кодирования алфавита:
Такое количество бит занимает один идентификатор, переведём данное значение в байты:
Осталось определить сколько мБайт необходимо для хранения 53 756 идентификаторов. Для этого полученное количество байт помножим на необходимое количество идентификаторов и переведём в мБайты:
Мы получили нецелое количество мБайт, округлим вверх, так как если мы округлим в меньшую сторону, то в таком случае мы потеряем часть информации. Получим, что 7 мБайт необходимо для хранения 53 756 идентификаторов.
Ошибка.
Попробуйте повторить позже
На предприятии каждой изготовленной детали присваивают серийный номер, символы из 266-символьного специального алфавита. В базе данных для хранения каждого серийного номера отведено одинаковое и минимально возможное число байт. При этом используется посимвольное кодирование серийных номеров, все символы кодируются одинаковым и минимально возможным числом бит. Известно, что для хранения 123 серийных номеров отведено не более 52 Кбайт памяти. Определите максимально возможную длину серийного номера. В ответе запишите только целое число.
Для начала определим количество бит, необходимых для кодирования алфавита. В алфавите 266 символов, то есть 8 бит будет недостаточно, так как хватит только закодировать 256 символов, поэтому мы берём 9 бит для кодирования. Теперь посчитаем сколько бит занимает 1 серийный номер. Для этого переведём 52 кБайт в биты и поделим на 123:
Мы получили нецелое число бит необходимых для хранения одного серийного номера, округлим в меньшую сторону, так как если мы округлим в большую сторону, то получим, что объём памяти занимаемых 123 номерами будет превышать 52 кБайт памяти. Теперь поделим полученное количество бит на количество бит, необходимых для кодирования алфавита:
Округлим полученное значение в меньшую сторону, так как если округлим в большую сторону, то получим, что один серийный номер будет весить больше 3463 бит, что приведёт к тому, что объём памяти занимаемых 123 номерами будет превышать 52 кБайт памяти. Получим, что 384 символа содержит серийный номер.
Ошибка.
Попробуйте повторить позже
При регистрации в компьютерной системе каждому объекту присваивается идентификатор, состоящий из 56 символов и содержащий только десятичные цифры и символы из 266-символьного специального алфавита. В базе данных для хранения каждого идентификатора отведено одинаковое и минимально возможное целое число байт. При этом используется посимвольное кодирование идентификаторов, все символы кодируются одинаковым и минимально возможным количеством бит. Определите количество идентификаторов, которое можно уместить на карте памяти объемом в 5 мБайт. В ответе запишите только целое число – количество идентификаторов.
Для начала определим количество бит, необходимых для кодирования алфавита. В алфавите 266 символов, то есть 8 бит будет недостаточно, так как их хватит закодировать только 256 символов, поэтому мы берём 9 бит для кодирования. Следующим шагом посчитаем количество бит, которое занимает один идентификатор, для этого перемножим количество символов в идентификаторе и количество бит необходимых для кодирования алфавита:
Такое количество бит занимает один идентификатор, переведём данное значение в байты:
Осталось определить сколько идентификаторов можно поместить на карту памяти объёмом в 5 мБайт. Для этого 5 мБайт переведём в байты и поделим на количество байт занимаемых одним идентификатором:
Мы получили нецелое количество идентификаторов, переведём их в меньшую сторону, так как если мы округлим в большую сторону, то в таком случае объём занимаемый всеми идентификаторами будет превышать 5 мБайт. Получим, что 83 220 идентификаторов это максимальное количество, которое можно уместить на карте памяти объёмом 5 мБайт.
Ошибка.
Попробуйте повторить позже
При трудоустройстве в Школково работникам присваивают идентификационный номер, который состоит из 6 символов. При этом используют посимвольное кодирование идентификационных номеров, все символы кодируют одинаковым и минимально возможным количеством бит. В базе данных для хранения каждого серийного номера отведено одинаковое и минимально возможное число байт. Для хранения данных о 107 сотрудниках выделяется 1177 байт памяти. Определите минимально возможную мощность алфавила, из которого составляют идентификационные номера. В ответе запишите только число.
Для начала определим сколько бит занимают данные об одном сотруднике. Для этого 1177 байт переведём в биты и поделим на количество сотрудников:
Получили, что 88 бит занимают данные об одном сотруднике. Теперь узнаем сколько бит занимает один символ в идентификационном номере. Для этого поделим количество бит на количество символов в идентификационном номере:
Получили не целое число, округляем в меньшую сторону, так как иначе данные обо всех сотрудниках будут содержать больше 1177 байт, тогда 14 бит занимает один символ, выходит, что такое количество бит и используют для кодирования всего алфавита. Теперь определим минимальную мощьность алфавита.
Алфавит мощностью до 8192 символов можно закодировать 13 битами, так как . Значит минимальная
мощьность алфавита, на которую потребуется 14 бит – 8193.
Ошибка.
Попробуйте повторить позже
При трудоустройстве в Школково работникам присваивают идентификационный номер, который состоит из 16 символов.При этом используют посимвольное кодирование идентификационных номеров, все символы кодируют одинаковым и минимально возможным количеством бит. В базе данных для хранения каждого серийного номера отведено одинаковое и минимально возможное число байт. Для хранения данных о 1536 сотруднике выделяется не более 12 кБайт памяти. Определите максимальное количество бит, которое используют для кодирования символов, использующихся в идентификационном номере. В ответ укажите целое число - количество бит.
Для начала определим сколько бит занимают данные об одном сотруднике. Для этого 12 кБайт переведём в биты и поделим на количество сотрудников:
Получили, что 64 бит занимают данные об одном сотруднике. Теперь узнаем сколько бит занимает один символ в идентификационном номере. Для этого поделим количество бит, занимаемых одним сотрудником, на количество символов в идентификационном номере:
Получили, что 4 бит занимает один символ, выходит, что такое количество бит и используют для кодирования всего алфавита.
Ошибка.
Попробуйте повторить позже
При регистрации в компьютерной системе каждому пользователю присваивается уникальный идентификатор, состоящий из 10 символов. Первым и последним символом идентификатора является одна из десятичных цифр, оставшиеся символы могут быть одной из 26-ти строчных или заглавных латинских букв. Для кодирования каждого идентификатора отведено одинаковое минимально возможное целое число байтов. Сколько байтов потребуется для хранения 300 идентификаторов?
Так как в условии задачи не сказано, что идентификатор кодируется посимвольно, то, чтобы использовать минимальное возможное количество байт на каждый идентификатор, необходимо кодировать «поидентификаторно».
Для этого сначала посчитаем сколько всего может быть идентификаторов:
Рассчитаем это значение с помощью Python:
x = 10**2 * 52**8 print(x) # 5345972853145600
Чтобы выяснить, сколько бит нужно чтобы закодировать такое количество идентификаторов необходимо взять логарифм по основанию 2, сделаем это так же с помощью Python:
from math import * x = 10**2 * 52**8 res = log(x, 2) print(res) # 52.247373934903464
Получается, что для кодирования одного идентификатора необходимо 53 бита (52 взять нельзя, так как не хватит), переводим в байты и округляем до целого числа в большую сторону:
Значит, для хранения 300 идентификаторов потребуется
Ошибка.
Попробуйте повторить позже
При регистрации в компьютерной системе каждому пользователю присваивается уникальный идентификатор, состоящий из 14 символов. Первым, вторым и третьим символом идентификатора являются одна из десятичных цифр или одна из 26-ти аглавных латинских букв, четвертым символом является нижнее подчеркивание «_», оставшиеся символы могут быть одной из 26-ти строчных латинских букв. Для кодирования каждого идентификатора отведено одинаковое минимально возможное целое число байтов. Сколько байтов потребуется для хранения 150 идентификаторов?
Так как в условии задачи не сказано, что идентификатор кодируется посимвольно, то, чтобы использовать минимальное возможное количество байт на каждый идентификатор, необходимо кодировать «поидентификаторно».
Для этого сначала посчитаем сколько всего может быть идентификаторов:
Рассчитаем это значение с помощью Python:
x = 36**3 * 26**10 print(x) # 6586292014803910656
Чтобы выяснить, сколько бит нужно чтобы закодировать такое количество идентификаторов необходимо взять логарифм по основанию 2, сделаем это так же с помощью Python:
from math import * x = 36**3 * 26**10 res = log(x, 2) print(res) # 62.514172185737856
Получается, что для кодирования одного идентификатора необходимо 63 бита (62 взять нельзя, так как не хватит), переводим в байты и округляем до целого числа в большую сторону:
Значит, для хранения 150 идентификаторов потребуется
Ошибка.
Попробуйте повторить позже
При регистрации в компьютерной системе каждому объекту присваивается идентификатор, состоящий из 60 символов и содержащий только десятичные цифры и символы из 250-символьного специального алфавита. В базе данных для хранения каждого идентификатора отведено одинаковое и минимально возможное целое число байт. При этом используется посимвольное кодирование идентификаторов, все символы кодируются одинаковым и минимально возможным количеством бит. Определите объём памяти (в Кбайт), необходимый для хранения 65 536 идентификаторов.
В ответе запишите только целое число – количество Кбайт.
Всего в идентификаторе используется 10 + 250 = 260 символов.
Так как с помощью N бит можно закодировать символов, то для записи каждого из 320 символов необходимо 9
бит (Так как
= 512 > 260 ).
Для хранения всех 60 символов пароля нужно бит = 67.5 байт
байт.
Таким образом, для хранения 65 536 идентификаторов необходимо = 4352 Кбайт.
Ошибка.
Попробуйте повторить позже
При регистрации в компьютерной системе каждому объекту присваивается идентификатор, состоящий из 317 символов и содержащий только десятичные цифры и символы из 4090-символьного специального алфавита. В базе данных для хранения каждого идентификатора отведено одинаковое и минимально возможное целое число байт. При этом используется посимвольное кодирование идентификаторов, все символы кодируются одинаковым и минимально возможным количеством бит. Определите объём памяти (в Мбайт), необходимый для хранения 262 144 идентификаторов. В ответе запишите только целое число – количество Мбайт.
Источники:
Заметим, что k бит позволяют кодировать символов.
Для идентификатора, использующего десятичные цифры и 4090-символьный алфавит, требуется 13 бит
().
Для хранения 317 символов по 13 бит требуется бит.
Переведем 4121 бит в Мбайты и домножим на 262144 (число идентификаторов). Получаем
Мб
Ошибка.
Попробуйте повторить позже
Каждое изделие, изготовленное на предприятии, получает уникальный код, состоящий из 22 символов. Каждый символ кода может быть латинской буквой (только строчной), десятичной цифрой или специальным символом из дополнительного набора. Используется посимвольное кодирование, каждый символ кодируется одинаковым минимально возможным числом бит, а для хранения каждого кода в целом отводится одинаковое минимально возможное число байт. Известно, что для хранения списка из 4000 кодов выделено не более 100 Кбайт. Какое наибольшее количество специальных символов может входить в дополнительный набор символов?
Посчитаем объем одного кода. Для этого разделим Кбайт =
Бит на
(кол-во кодов).
Получим бит на код. Теперь найдем, сколько памяти требуется на один символ.
бит (после округления в меньшую сторону, больше выделенной памяти мы взять не сможем, а меньше -
запросто).
Посчитаем мощность алфавита, она равна . Вычтем
цифр и
букв.
. Это и будут наши спец. символы.
Ошибка.
Попробуйте повторить позже
Серийный номер детали состоит из 40 символов. Для записи серийного номера используются латинские буквы (строчные и прописные), десятичные цифры и символы из дополнительного набора. В базе данных для хранения каждого серийного номера отведено одинаковое и минимально возможное число байт. При этом используется посимвольное кодирование серийных номеров, все символы кодируются одинаковым и минимально возможным числом бит. Известно, что для хранения 1000 серийных номеров отведено не более 60 Кбайт памяти. Определите максимально возможное число символов в специальном алфавите. В ответе запишите только целое число.
Для начала поймём, сколько бит отведено на каждый серийный номер. Кбайт =
бит
(умножили на 1024 и на 8).
Теперь остаётся разделить полученное число на 1000, чтобы узнать сколько бит отведено на номер. Разделим сразу же на 40, таким образом мы узнаем сколько бит нужно для кодирования одного символа, ведь символов в одном номере ровно 40.
Бит (округлили в меньшую сторону, чтобы точно хватило места).
Получается, что допустимый алфавит для одного символа букв, цифр и спец. символов в
сумме.
спец. символа, поскольку букв 26 (заглавные учтём умножением на 2), а
цифр 10.
Ошибка.
Попробуйте повторить позже
На предприятии каждой изготовленной детали присваивают серийный номер, состоящий из 246 символов. В базе данных для хранения каждого серийного номера отведено одинаковое и минимально возможное число байт. При этом используется посимвольное кодирование серийных номеров, все символы кодируются одинаковым и минимально возможным числом бит. Известно, что для хранения 703 569 серийных номеров доступно не более 77 Мбайт памяти. Определите максимально возможную мощность алфавита, используемого для записи серийных номеров. В ответе запишите только целое число.
Источники:
Посчитаем, сколько байт нужно на один номер. Мбайт =
байт (умножили на
раза для перевода в Кбайт и байт).
Байт на один номер (
номеров всего). Округляем в меньшую сторону,
чтобы не превысить допустимый объём информации.
Байт =
Бит (умножили на
).
Далее Бит (округляем в меньшую сторону, чтобы не превысить допустимый объём
информации) доступно для кодирования одного символа из нашего номера.
Заметим, что бит позволяют кодировать
символов, что и будет мощностью
алфавита.
Ошибка.
Попробуйте повторить позже
На предприятии каждой изготовленной детали присваивают серийный номер, состоящий из 71 118 символов. Для его хранения отведено одинаковое и минимально возможное целое число байт. При этом используется посимвольное кодирование серийных номеров, все символы кодируются одинаковым и минимально возможным числом бит. Известно, что для хранения 12 288 серийных номеров отведено не более 2 Гбайт памяти. Определите максимально возможную мощность алфавита, из которого составляются серийные номера. В ответе запишите только число.
Гбайт =
байт =
байт было отведено на все номера.
На один номер выделено байт (поделили общее количество байт на количество номеров).
Округлили в меньшую сторону, чтобы не занять слишком много места.
байт =
бит на один номер.
Каждый символ был закодирован определённым числом бит, в результате получилось бит, составим
уравнение.
, откуда
бит. Вновь округлили в меньшую сторону.
с помощью бит можно закодировать
символов.
Ошибка.
Попробуйте повторить позже
На предприятии каждой изготовленной детали присваивают серийный номер, состоящий из 54 693 символов. Для его хранения отведено одинаковое и минимально возможное целое число байт. При этом используется посимвольное кодирование серийных номеров, все символы кодируются одинаковым и минимально возможным числом бит. Известно, что для хранения 24 576 серийных номеров отведено не более 4 Гбайт памяти. Определите максимально возможную мощность алфавита, из которого составляются серийные номера. В ответе запишите только число.
Гбайт =
байт =
байт было отведено на все номера.
На один номер выделено байт (поделили общее количество байт на количество номеров).
Округлили в меньшую сторону, чтобы не занять слишком много места.
байт =
бит на один номер.
Каждый символ был закодирован определённым числом бит, в результате получилось бит, составим
уравнение.
, откуда
бит. Вновь округлили в меньшую сторону.
с помощью бит можно закодировать
символа.