Для кодирования некоторой последовательности, состоящей из

advertisement
1. Для кодирования некоторой последовательности, состоящей из букв А, Б, В, Г и Д, используется
неравномерный двоичный код, позволяющий однозначно декодировать полученную двоичную
последовательность. Вот этот код: А – 0; Б – 100; В – 1010; Г – 111; Д – 110. Требуется
сократить для одной из букв длину кодового слова так, чтобы код по-прежнему можно было
декодировать однозначно. Коды остальных букв меняться не должны.
Каким из указанных способов это можно сделать?
1) для буквы В – 101
2) это невозможно
3) для буквы В – 010
4) для буквы Б – 10
Решение:
1) код однозначно декодируется, если выполняется условие Фано или обратное условие Фано; в
данном случае «прямое» условие Фано выполняется: с кода буквы А (0) не начинается ни один
другой код, оставшиеся короткие коды (Б, Г и Д) не совпадают с началом длинного кода буквы В;
таким образом, при сокращении нужно сохранить выполнение условия Фано
2) вариант 3 не подходит, потому что новый код буквы В начинается с 0 (кода А), поэтому условие
Фано нарушено
3) вариант 4 не подходит, потому что код буквы В начинается с 10 (нового кода б), поэтому условие
Фано нарушено
4) вариант 1 подходит, условие Фано сохраняется (все трёхбитные коды различны, ни один не
начинается с 0)
5) Ответ: 1.
2. По каналу связи передаются сообщения, содержащие только 4 буквы: А, И, С, Т.
В любом сообщении больше всего букв А, следующая по частоте буква – С, затем – И. Буква Т
встречается реже, чем любая другая. Для передачи сообщений нужно использовать неравномерный
двоичный код, допускающий однозначное декодирование; при этом сообщения должны быть как
можно короче. Шифровальщик может использовать один из перечисленных ниже кодов. Какой код
ему следует выбрать?
1) А – 0, И – 1, С – 00, Т – 11
2) С – 1, И – 0, А – 01, Т – 10
3) А – 1, И – 01, С – 001, Т – 000
4) С – 0, И – 11, А – 101, Т – 100
Решение:
1) сначала выберем коды, допускающие однозначное декодирование: это коды 3 и 4 (для них
выполняется условие Фано), коды 1 и 2 не подходят
2) для того, чтобы длина сообщения была как можно короче, должно выполнять правило: «чем чаще
встречается буква, тем короче её код»;
3) к сожалению, правило, приведённое выше, не совсем «хорошо» выполняется для кодов 3 и 4: в
коде 3 длина кодового слова для буквы С больше, чем длина кодового слова буквы И (а хочется
наоборот); для кода 4 длина кодового слова для буквы А – не самая маленькая из всех
4) сравним коды 3 и 4, предполагая, что в сообщении буква А встречается  раз, буква С –  раз, буква
И –  раз и буква Т –  раз; причём по условию задачи  >  >  > 
5) при кодировании кодом 3 получаем сообщение длиной
L3 =  + 3 + 2 +3 
6) при кодировании кодом 3 получаем сообщение длиной
L4 = 3 +  + 2 +3 
7) находим разность: L4 – L3 = (3 +  + 2 +3 ) – ( + 3 + 2 +3 ) = 2 – 2
8) поскольку  > , получаем L4 – L3 > 0, то есть код 3 более экономичный
9) Ответ: 3.
3. Для кодирования некоторой последовательности, состоящей из букв А, Б, В, Г и Д, используется
неравномерный двоичный код, позволяющий однозначно декодировать полученную двоичную
последовательность. Вот этот код: А–00, Б–010, В–011, Г–101, Д–111. Можно ли сократить для
одной из букв длину кодового слова так, чтобы код по-прежнему можно было декодировать
однозначно? Коды остальных букв меняться не должны. Выберите правильный вариант ответа.
1) для буквы Б – 01
2) это невозможно
3) для буквы В – 01
4) для буквы Г – 01
Решение:
1) для однозначного декодирования достаточно, чтобы выполнялось условие Фано или обратное
условие Фано;
2) проверяем последовательно варианты 1, 3 и 4; если ни один из них не подойдет, придется выбрать
вариант 2 («это невозможно»);
3) проверяем вариант 1: А–00, Б–01, В–011, Г–101, Д–111.
«прямое» условие Фано не выполняется (код буквы Б совпадает с началом кода буквы В);
«обратное» условие Фано не выполняется (код буквы Б совпадает с окончанием кода буквы Г);
поэтому этот вариант не подходит;
4) проверяем вариант 3: А–00, Б–010, В–01, Г–101, Д–111.
«прямое» условие Фано не выполняется (код буквы В совпадает с началом кода буквы Б);
«обратное» условие Фано не выполняется (код буквы В совпадает с окончанием кода буквы Г);
поэтому этот вариант не подходит;
5) проверяем вариант 4: А–00, Б–010, В–011, Г–01, Д–111.
«прямое» условие Фано не выполняется (код буквы Г совпадает с началом кодов букв Б и В); но
«обратное» условие Фано выполняется (код буквы Г не совпадает с окончанием кодов остальных
буквы); поэтому этот вариант подходит;
6) правильный ответ – 4.
4. Для кодирования букв А, Б, В, Г решили использовать двухразрядные последовательные двоичные
числа (от 00 до 11, соответственно). Если таким способом закодировать последовательность
символов БАВГ и записать результат шестнадцатеричным кодом, то получится
1) 4B16
2) 41116
3)BACD16
4) 102316
Решение:
1) из условия коды букв такие: A – 00, Б –01, В – 10 и Г – 11, код равномерный
2) последовательность БАВГ кодируется так: 01 00 10 11 = 1001011
3) разобьем такую запись на тетрады справа налево и каждую тетраду переведем в
шестнадцатеричную систему (то есть, сначала в десятичную, а потом заменим все числа от 10 до 15
на буквы A, B, C, D, E, F); получаем
1001011 = 0100 10112 = 4B16
4) правильный ответ – 1.
5. Александра заполняла таблицу истинности для выражения F. Она успела заполнить лишь
небольшой фрагмент таблицы:
x1 x2 x3 x4 x5 x6 x7 x8 F
0
1 0
1
0
1
1
1 1
Каким выражением может быть F?
1) x1  ¬x2  x3  ¬x4  x5  x6  ¬x7  ¬x8
2) x1  x2  x3  ¬x4  ¬x5  ¬x6  ¬x7  ¬x8
3) ¬x1  x2  ¬x3  x4  x5  ¬x6  ¬x7  ¬x8
4) x1  ¬x2  x3  ¬x4  ¬x5  ¬x6  ¬x7  ¬x8
Решение:
1) перепишем выражения в более простой форме, заменив «И» () на умножение и «ИЛИ» () на
сложение:
1) x1  x2  x3  x4  x5  x6  x7  x8
2) x1  x2  x3  x4  x5  x6  x7  x8
3) x1  x2  x3  x4  x5  x6  x7  x8
4) x1  x2  x3  x4  x5  x6  x7  x8
2) в последнем столбце таблицы истинности видим две единицы, откуда сразу следует, что это не
может быть цепочка операций «И» (конъюнкций), которая даёт только одну единицу; поэтому
ответы 1 и 3 заведомо неверные
3) анализируем первую строку таблицы истинности; мы знаем в ней только два значения - x2  0 и
x8  1
4) для того, чтобы в результате в первой строке получить 0, необходимо, чтобы переменная x8
входила в сумму с инверсией (тогда из 1 получится 0!), это условие выполняется для обоих
оставшихся вариантов, 2 и 4
5) кроме того, переменная x2 должна входить в выражение без инверсии (иначе соответствующее
слагаемое в первой строке равно 1, и это даст в результате 1); этому условию не удовлетворяет
выражение 4; остается один возможный вариант – выражение 2
6) Ответ: 2.
6. Дан фрагмент таблицы истинности выражения F.
x1 x2 x3 x4 x5 x6 x7 x8
1 0 1 0 1 1 1 0
0 1 0 1 1 0 0 1
0 1 1 0 1 0 1 0
Какое выражение соответствует F?
1) (x2  x1)  ¬x3  x4  ¬x5  x6  ¬x7  x8
2) (x2  x1)  ¬x3  x4  ¬x5  x6  ¬x7  x8
3) ¬(x2  x1)  x3  ¬x4  x5  ¬x6  x7  ¬x8
4) (x2  x1)  x3  ¬x4  x5  ¬x6  x7  ¬x8
F
0
0
1
Решение:
1) перепишем выражение в более простой форме, заменив «И» () на умножение и «ИЛИ» () на
сложение:
( x2  x1 )  x3  x4  x5  x6  x7  x8
( x2  x1 )  x3  x4  x5  x6  x7  x8
( x2  x1 )  x3  x4  x5  x6  x7  x8
( x2  x1 )  x3  x4  x5  x6  x7  x8
2) в этом задании среди значений функции только одна единица, как у операции «И», это намекает на
то, что нужно искать правильный ответ среди вариантов, содержащих «И», «НЕ» и импликацию (это
варианты 1 и 3)
3) действительно, вариант 2 исключён, потому что при x4=1 во второй строке получаем 1, а не 0
4) аналогично, вариант 4 исключён, потому что при x5=1 в первой строке получаем 1, а не 0
5) итак, остаются варианты 1 и 3; вариант 1 не подходит, потому что при x6=0 в третьей строке
получаем 0, а не 1
6) проверяем подробно вариант 3, он подходит во всех строчках
7) Ответ: 3.
7. Дано логическое выражение, зависящее от 5 логических переменных:
z1  ¬z2  ¬z3  ¬z4  z5
Сколько существует различных наборов значений переменных, при которых выражение ложно?
1) 1
2) 2
3) 31
4) 32
Решение:
1) задано выражение с пятью переменными, которые могут принимать 25 = 32 различных комбинаций
значений
2) операция  – это логическое умножение, поэтому заданное выражение истинно только тогда,
когда все сомножитель истинны, то есть в одном единственном случае
3) тогда остается 32 – 1 = 31 вариант, когда выражение ложно
4) ответ: 3.
8. Укажите наименьшее четырёхзначное восьмеричное число, двоичная запись которого содержит 5
единиц. В ответе запишите только само восьмеричное число, основание системы счисления
указывать не нужно.
Решение:
1) вообще, минимальное двоичное число, содержащее 5 единиц – это 111112, но в восьмеричной
системе оно записывается как 37 – двухзначное число
2) минимальное четырёхзначное восьмеричное число – 10008 = 1 000 000 0002, для решения задачи в
конце этого числа нужно заменить четыре нуля на единицы:
1 000 001 1112 = 10178
3) Ответ: 1017
9. Сколько единиц в двоичной записи десятичного числа 519?
Решение:
1) проще всего представить заданное число в виде суммы степеней числа 2:
519 = 512 + 7 = 29 + 4 + 3 = 29 + 22 + 2 + 1 = 29 + 22 + 21 + 20
2) количество единиц в двоичной записи числа равно количеству слагаемых в таком разложении
3) Ответ: 4
10. Даны 4 числа, они записаны с использованием различных систем счисления. Укажите среди этих
чисел то, в двоичной записи которого содержится ровно 6 единиц. Если таких чисел несколько,
укажите наибольшее из них.
1) 6310 * 410
2) F816 + 110
3) 3338
4) 111001112
Решение:
1) нужно перевести все заданные числа в двоичную систему, подсчитать число единиц и выбрать
наибольшее и чисел, в которых ровно 6 единиц;
2) для первого варианта переведем оба сомножителя в двоичную систему:
6310 = 1111112
410 = 1002
в первом числе ровно 6 единиц, умножение на второе добавляет в конец два нуля:
6310 * 410 = 1111112 * 1002 = 111111002
то есть в этом числе 6 единиц
3) для второго варианта воспользуемся связью между шестнадцатеричной и двоичной системами
счисления: каждую цифру шестнадцатеричного числа можно переводить отдельно в тетраду (4
двоичных цифры):
F16 = 11112
816 = 10002
F816 = 1111 10002
после добавления единицы F816 + 1 = 1111 10012 также получаем число, содержащее ровно 6
единиц, но оно меньше, чем число в первом варианте ответа
4) для третьего варианта используем связь между восьмеричной и двоичной системами: каждую
цифру восьмеричного числа переводим отдельно в триаду (группу из трёх) двоичных цифр:
3338 = 011 011 0112 = 110110112
это число тоже содержит 6 единиц, но меньше, чем число в первом варианте ответа
5) последнее число 111001112 уже записано в двоичной системе, оно тоже содержит ровно 6 единиц,
но меньше первого числа
6) таким образом, все 4 числа, указанные в вариантах ответов содержат ровно 6 единиц, но
наибольшее из них – первое
7) Ответ: 1.
11. Производилась двухканальная (стерео) звукозапись с частотой дискретизации 64 кГц и 24битным разрешением. В результате был получен файл размером 120 Мбайт, сжатие данных не
производилось. Определите приблизительно, сколько времени (в минутах) производилась запись. В
качестве ответа укажите ближайшее к времени записи целое число, кратное 5.
Решение (через степени двойки):
1) так как частота дискретизации 64 кГц, за одну секунду запоминается 64000 значений сигнала
2) так как глубина кодирования – 24 бита = 3 байта, для хранения 1 секунды записи требуется
2  64000  3 байта
(коэффициент 2 – для стерео записи)
3) на 1 минуту = 60 секунд записи потребуется
60  2  64000  3 байта
4) переходим к степеням двойки, заменяя 60  64 = 26; 1000  1024 = 210:
26  21  26  210  3 байта = 26  21  26  3 Кбайта
= 22  21  3 Кбайта = 24 Мбайта
5) тогда время записи файла объёмом 120 Мбайт равно 120 / 24 = 5 минут
6) таким образом, правильный ответ – 5.
12. Производится одноканальная (моно) звукозапись с частотой дискретизации 16 кГц и глубиной
кодирования 24 бита. Запись длится 1 минуту, ее результаты записываются в файл, сжатие
данных не производится. Какое из приведенных ниже чисел наиболее близко к размеру полученного
файла, выраженному в мегабайтах?
1) 0,2
2) 2
3) 3
4) 4
Решение:
1) обратите внимание, что в этой задаче не требуется ТОЧНО вычислять размер файла, нужно только
выполнить прикидочные расчеты
2) в этом случае, если нет калькулятора (а на ЕГЭ его нет) удобно привести все числа к ближайшим
степеням двойки, например,
1 мин = 60 сек  64 сек = 26 сек
1000  1024 = 210
3) так как частота дискретизации 16 кГц, за одну секунду запоминается 16000 значений сигнала, что
примерно равно
16  1000  16  1024 = 24  210 = 214 Гц
4) так как глубина кодирования – 24 бита = 3 байта, для хранения 1 секунды записи требуется
16000  3 байта  214  3 байт
(для стерео записи – в 2 раза больше)
5) на 1 минуту = 60 сек  64 сек = 26 сек записи потребуется примерно
64  214  3 байта = 26  214  3 байта = 3  220 байта
6) переводит эту величину в Мбайты:
(3  220 байта) / 220 = 3 Мбайт
7) таким образом, правильный ответ – 3.
13. Документ объёмом 40 Мбайт можно передать с одного компьютера на другой двумя способами.
А. Сжать архиватором, передать архив по каналу связи, распаковать.
Б. Передать по каналу связи без использования архиватора.
Какой способ быстрее и насколько, если:
• средняя скорость передачи данных по каналу связи составляет 223 бит в секунду;
• объём сжатого архиватором документа равен 90% исходного;
• время, требуемое на сжатие документа, – 16 секунд, на распаковку – 2 секунды?
В ответе напишите букву А, если быстрее способ А, или Б, если быстрее способ Б. Сразу после буквы
напишите число, обозначающее, на сколько секунд один способ быстрее другого?
Решение:
1)
2)
3)
4)
5)
вспомним, что 1 Мбайт = 210 Кбайт = 220 байт = 223 бит
время передачи несжатого файла (по варианту Б): 40  223 / 223 = 40 с
время передачи файла по варианту А: 16 + 0,9  40 + 2 = 18 + 36 = 54 с
таким образом, быстрее вариант Б на 54 – 40 = 14 с
Ответ: Б14.
14. Сколько слов длины 5, начинающихся с гласной буквы, можно составить из букв Е, Г, Э? Каждая
буква может входить в слово несколько раз. Слова не обязательно должны быть осмысленными
словами русского языка.
Решение:
1) первая буква слова может быть выбрана двумя способами (Е или Э), остальные – трёмя
2) общее число различных слов равно 2*3*3*3*3 = 162
3) ответ: 162.
15. Все 4-буквенные слова, составленные из букв К, Л, Р, Т, записаны в алфавитном порядке и
пронумерованы. Вот начало списка:
1. КККК
2. КККЛ
3. КККР
4. КККТ
……
Запишите слово, которое стоит на 67-м месте от начала списка.
Решение:
1) самый простой вариант решения этой задачи – использование систем счисления; действительно,
здесь расстановка слов в алфавитном порядке равносильна расстановке по возрастанию чисел,
записанных в четверичной системе счисления (основание системы счисления равно количеству
используемых букв)
2) выполним замену К0, Л1, Р2, Т3; поскольку нумерация слов начинается с единицы, а
первое число КККК0000 равно 0, под номером 67 будет стоять число 66, которое нужно
перевести в четверичную систему: 66 = 10024
3) Выполнив обратную замену (цифр на буквы), получаем слово ЛККР.
4) Ответ: ЛККР.
16. При регистрации в компьютерной системе каждому пользователю выдаётся пароль, состоящий
из 15 символов и содержащий только символы Ш, К, О, Л, А (таким образом, используется 5
различных символов). Каждый такой пароль в компьютерной системе записывается минимально
возможным и одинаковым целым количеством байт (при этом используют посимвольное
кодирование и все символы кодируются одинаковым и минимально
возможным количеством бит). Укажите объём памяти в байтах, отводимый этой системой для
записи 30 паролей. В ответе запишите только число, слово «байт» писать не нужно.
Решение:
1) согласно условию, в пароле можно использовать 5 символов
2) для кодирования номера одного из 5 символов нужно выделить 3 бита памяти (они позволяют
закодировать 23 = 8 вариантов)
3) для хранения всех 15 символов пароля нужно 15  3 = 45 бит
4) поскольку пароль должен занимать целое число байт, берем ближайшее большее (точнее, не
меньшее) значение, которое кратно 8: это 48 = 6  8; то есть один пароль занимает 6 байт
5) тогда 30 паролей занимают 6  30 = 180 байт
6) ответ: 180.
17. В велокроссе участвуют 119 спортсменов. Специальное устройство регистрирует прохождение
каждым из участников промежуточного финиша, записывая его номер с использованием минимально
возможного количества бит, одинакового для каждого спортсмена. Каков информационный объем в
битах сообщения, записанного устройством, после того как промежуточный финиш прошли 70
велосипедистов?
Решение:
1) велосипедистов было 119, у них 119 разных номеров, то есть, нам нужно закодировать 119
вариантов
2) по таблице степеней двойки находим, что для этого нужно минимум 7 бит (при этом можно
закодировать 128 вариантов, то есть, еще есть запас); итак, 7 бит на один отсчет
3) когда 70 велосипедистов прошли промежуточный финиш, в память устройства записано 70
отсчетов
4) поэтому в сообщении 70*7 = 490 бит информации.
18. Решите уравнение. 121x  1  1017
Ответ запишите в троичной системе счисления. Основание системы счисления указывать не
нужно.
Решение:
1) переведём все числа в десятичную систему счисления:
121x  1  x 2  2  x  1, 1017  1  7 2  0  71  1  70  50
2) собирая всё в одно уравнение получаем
x 2  2 x  1  1  50  x2  2 x  48  0
3) это уравнение имеет два решения, 6 и -8; основание системы счисления – натуральное число,
поэтому ответ – 6
4) переводим ответ в троичную систему: 6 = 2∙31 = 203.
5) ответ: 20.
19. Сколько единиц в двоичной записи числа
42014 + 22015 – 87
Решение:
1) приведём все числа к степеням двойки:
42014 + 22015 – 8 = (22)2014 + 22015 - 23 = 24028 + 22015 – 23
1 ,
2) вспомним, что число 2N-1 в двоичной системе записывается как N единиц: 2 N  1  1
N
10 0
а число 2 –2 при K < N записывается как N–K единиц и K нулей: 2  2  1
N
N
K
K
N K
2015
3
3) согласно п. 2, число 2
– 2 запишется как 2012 единиц и 3 нуля
4028
4) прибавление 2 даст ещё одну единицу, всего получается 2012 + 1 = 2013 единиц
5) ответ: 2013.
K
20. На числовой прямой даны два отрезка: P = [37; 60] и Q = [40; 77]. Укажите наименьшую возможную
длину такого отрезка A, что формула
( x  P)  ((( x  Q)  ( x  A))  ( x  P))
тождественно истинна, то есть принимает значение 1 при любом значении переменной х.
Решение:
1) для того, чтобы упростить понимание выражения, обозначим отдельные высказывания буквами
A: x  А,
P: x  P,
Q: x  Q
2) перейдем к более простым обозначениям
P  (Q  A  P )
3) раскрываем обе импликации по формуле A  B  A  B :
P  (Q  A  P)  P  Q  A  P  Q  A  P
4) теперь используем закон де Моргана A  B  A  B :
QAP
5) в таком виде выражение уже смотрится совсем не страшно; Сразу видно, что отрезок A должен
перекрыть область на числовой оси, которая не входит в область Q  P :
P
P
37
Q
40
60
77
x
Q
6) по рисунку видно, что не перекрыт только отрезок [40;60] (он выделен жёлтым цветом), его
длина – 20, это и есть правильный ответ.
7) Ответ: 20.
По материалам сайта kpolyakov.spb.ru
Download