- •А Основное отличие между задачами a16 и b1 состоит в том, что в b1 не даны варианты ответа. 16 (повышенный уровень, время – 3 мин) b1 (базовый уровень, время – 1 мин)
- •Пример задания:
- •Еще пример задания:
- •Еще пример задания:
- •Еще пример задания:
- •Еще пример задания:
- •Еще пример задания:
- •Еще пример задания:
- •Задачи для тренировки3:
Еще пример задания:
Какое наименьшее число символов должно быть в алфавите, чтобы при помощи всевозможных трехбуквенных слов, состоящих из символов данного алфавита, можно было передать не менее 9 различных сообщений?
1) 1 2) 2 3) 3 4) 4
Решение:
-
здесь используется только одна формула: если алфавит имеет мощность M, то количество всех возможных «слов» длиной N равно
-
в данном случае нужно закодировать 9 сигналов () с помощью трехбуквенных слов ()
-
таким образом, нужно найти наименьшее целое M, такое что (куб числа не меньше 9)
-
проще всего использовать метод подбора: при получаем (с помощью трех двоичных сигналов можно закодировать только 8 вариантов), но уже при имеем , поэтому нужно брать
-
таким образом, правильный ответ – 3.
-
Возможные проблемы:
-
нас интересуют только трехбуквенные слова (одно- и двухбуквенные слова учитывать не нужно)
-
Еще пример задания:
Каждая ячейка памяти компьютера, работающего в троичной системе счисления, может принимать три различных значения (-1, 0, 1). Для хранения некоторой величины отвели 4 ячейки памяти. Сколько различных значений может принимать эта величина?
Решение:
-
непривычность этой задачи состоит в том, что используется троичная система
-
фактически мы имеем дело с языком, алфавит которого содержит M=3 различных символа
-
поэтому количество всех возможных «слов» длиной N равно
-
для получаем
-
таким образом, правильный ответ – 81.
-
Возможные ловушки:
-
если не осознать, что используется троичная (а не двоичная!) система, можно «по инерции» получить неправильный ответ
-
Еще пример задания:
В школьной базе данных хранятся записи, содержащие информацию об учениках:
<Фамилия> – 16 символов: русские буквы (первая прописная, остальные строчные),
<Имя> – 12 символов: русские буквы (первая прописная, остальные строчные),
<Отчество> – 16 символов: русские буквы (первая прописная, остальные строчные),
<Год рождения> – числа от 1992 до 2003.
Каждое поле записывается с использованием минимально возможного количества бит. Определите минимальное количество байт, необходимое для кодирования одной записи, если буквы е и ё считаются совпадающими.
1) 28 2) 29 3) 46 4) 56
Решение:
-
очевидно, что нужно определить минимально возможные размеры в битах для каждого из четырех полей и сложить их;
-
важно! известно, что первые буквы имени, отчества и фамилии – всегда заглавные, поэтому можно хранить их в виде строчных и делать заглавными только при выводе на экран (но нас это уже не волнует)
-
таким образом, для символьных полей достаточно использовать алфавит из 32 символов (русские строчные буквы, «е» и «ё» совпадают, пробелы не нужны)
-
для кодирования каждого символа 32-символьного алфавита нужно 5 бит (32 = 25555), поэтому для хранения имени, отчества и фамилии нужно (16 + 12 + 16)•5=220 бит
-
для года рождения есть 12 вариантов, поэтому для него нужно отвести 4 бита (24 = 16 ≥ 12)
-
таким образом, всего требуется 224 бита или 28 байт
-
правильный ответ – 1.