Запись — строка символов. Символ — несколько бит, запись —
целое число байт, всё вместе — Кбайты и Мбайты.
Всё задание — одна цепочка, и в ней два округления вверх.
Базовый уровень, один балл. Ответ — одно целое число.
Каждой детали присваивают серийный номер из 157 символов. Для каждого номера отведено одинаковое и минимально возможное целое число байт, символы кодируются одинаковым и минимально возможным количеством бит.
Для хранения 12 450 номеров отведено не более 955 Кбайт. Какова максимально возможная мощность алфавита?
Демоверсия 2027, своими словами.
Длина записи, сколько записей, сколько памяти. Неизвестно, из скольких символов алфавит.
В округлениях: бит на символ и байт на запись — только целые, и только вверх. И в том, что спрошено: мощность — не число бит.
| Объём памяти | сколько Кбайт или Мбайт займут 262 144 идентификатора из 317 символов |
|---|---|
| Наибольшая длина | какой длины может быть номер, чтобы 2000 номеров уложились в 693 Кбайт |
| Наименьшая длина | при какой длине номера займут больше 23 Мбайт |
| Наибольшая мощность | из скольких символов может быть алфавит, чтобы всё уложилось в память |
| Наименьшая мощность | при каком алфавите номера займут не меньше заданного |
| Наибольшее количество | сколько паролей (и сведений о пользователях) влезет в 3 Мбайт |
Замер по 14 задачам экзаменов 2024–2027: объём — 4, длина — 4, мощность — 4, количество — 2. Шесть форм — шесть задач практикума.
Идентификатор: 250 символов, цифры и 1020 спецсимволов. Сколько Мбайт займут 4 194 304 идентификатора?
Каждое звено — одна строка программы. Округлений два, оба вверх: символ не делится на доли бита, запись — на доли байта.
бит различают 2i символов. Нужно
наименьшее
, при котором 2i ≥ a.
| i | 2i |
|---|---|
| 10 | 1024 |
| 11 | 2048 |
| 12 | 4096 |
| 13 | 8192 |
1030 символов в 10 бит не влезут, хоть log2 и «почти 10».
и
здесь ошибка.
1020 символов → 210 = 1024 → 10 бит.
Ответ выйдет 1252 Мбайт вместо 1376.
10 + 1020 = 1030 > 1024 → 11 бит.
Составители так и подбирают: спецалфавит чуть меньше степени двойки, а с цифрами — чуть больше.
| В условии | Символов |
|---|---|
| десятичные цифры | 10 |
| цифры шестнадцатеричной (N-ричной) системы | 16 (N) |
| заглавные латинские буквы | 26 — число не назовут |
| латинские буквы с учётом регистра | 52 |
250 символов по 11 бит — 2750 бит, это 343,75 байта. Но запись занимает целое число байт: отводим 344.
Округляем каждую запись, а не общий итог: у каждой свои ¼ байта лишние.
2750 · 4 194 304 / 8 / 220 = 1375 — на мегабайт меньше. По 0,25 байта на каждый из четырёх миллионов идентификаторов.
344 · 4 194 304 / 220 = 1376.
| 1 Кбайт | 210 = 1024 байт | |
|---|---|---|
| 1 Мбайт | 220 = 1 048 576 байт | |
| 1 Гбайт | 230 байт |
Записей обычно степень двойки (65 536, 262 144, 4 194 304),
поэтому ответ целый. напечатает
— в ответ
идёт
.
Номер: цифры и 500 спецсимволов. Для хранения 5000 номеров отведено не более 1000 Кбайт. Какой может быть наибольшая длина номера?
| n | байт на номер | всего байт | ≤ 1 024 000? |
|---|---|---|---|
| 180 | 203 | 1 015 000 | да |
| 181 ✓ | 204 | 1 020 000 | да |
| 182 | 205 | 1 025 000 | нет |
| В условии | В программе |
|---|---|
| отведено не более X | |
| отведено менее X | |
| требуется не менее X | |
| занимают более X |
Номер из 157 символов. Для 12 450 номеров отведено не более 955 Кбайт. Наибольшая мощность алфавита?
| a | i | байт | всего | влезает? |
|---|---|---|---|---|
| 8 ✓ | 3 | 59 | 734 550 | да |
| 9 | 4 | 79 | 983 550 | нет |
Не 3: три — это бит на символ. Спрашивают мощность — сколько символов различают 3 бита.
Начинаем с 2: , алфавит из одного
символа ничего не различает. Конец диапазона с запасом — до 216
и чуть дальше.
Пароль — 23 символа: 52 латинские буквы, цифры и 25 спецсимволов. Кроме пароля, о пользователе хранят 15 байт сведений. Выделено 3 Мбайт. О скольких пользователях можно хранить сведения?
15 байт добавляются к целым байтам пароля, а не к битам.
Страница практикума узнаёт эти ошибки по ответу и показывает на разборе красным, где именно сломалось.
Шесть задач — по одной на каждую форму вопроса, все на экране сразу, порядок свой. Ошибся — появится разбор рисунком и программа, которая решает именно эту задачу, а кнопка «Новые числа» даст такую же с другими числами.
| Конец цепочки | объём памяти · наибольшее количество |
|---|---|
| Начало цепочки | наибольшая и наименьшая длина · наибольшая и наименьшая мощность |
Тройку можно добрать, четвёрку и пятёрку — только заработать: решить можно всё, но без ошибок открыта «5», с одной — не выше «4», с двумя и больше — не выше «3».
Те же шесть форм вопроса, по одной задаче на каждую. Тип закрывается одним верным ответом; ошибся — придёт такая же задача с другими числами. Потолок по ошибкам — тот же, что в практикуме.
От четырёх закрытых типов появится код работы вида
и кнопка «Сдать работу».
Вторая кнопка открывает письмо: к коду прикладываются снимки своих программ и того, что они напечатали.
Число можно получить и не написав программу. Снимок кода показывает, что приём ваш, — поэтому он и просится вместе с ответом.
В начале следующей пары — проверочная из шести задач.