Задание 8. Кодирование данных, комбинаторика, системы счисления. Знание о методах измерения количества информации. Принципы работы с числами, записанными в позиционных системах счисления.
Решении с помощью программы на языке Python.
Комбинаторика:
- Дерево возможных вариантов. Этот метод решения комбинаторных задач помогает решать разнообразные задачи, касающиеся перебора вариантов происходящих событий.
- Закон умножения. Применяется, когда не требуется перечислять все возможные варианты, а нужно ответить на вопрос — сколько их существует.
- Закон сложения. Используется тогда, когда нужно выбрать только один элемент.
- Перестановки – это специальный случай размещений, когда выборка так же велика, как данное множество.
- Размещениями называют комбинации, в которых имеет значение порядок элементов.
- Сочетаниями называют комбинации, при составлении которых важно знать только то, какие элементы выбраны, но их порядок не имеет значения.
- В русском языке 33 буквы: 10 гласных букв (а, у, о, ы, и, э, я, ю, ё, е), 21 согласная буква (б, в, г, д, ж, з, й, к, л, м, н, п, р, с, т, ф, х, ц, ч, ш, щ) и два знака (ь, ъ).
- Алфавит английского языка по написанию совпадает с латинским алфавитом и состоит из 26 букв.
ДЕРЕВО ВОЗМОЖНЫХ ВАРИАНТОВ
ПРИМЕР:
«Игорь составляет таблицу кодовых слов для передачи сообщений, каждому сообщению соответствует своё кодовое слово. В качестве кодовых слов Игорь использует
3-буквенные слова, в которых есть только буквы A, B, X, причём буква X появляется ровно 1 раз. Каждая из других допустимых букв может встречаться в кодовом слове любое количество раз или не встречаться совсем. Сколько различных кодовых слов может использовать Игорь?»
- Определить длину слова (количество уровней
дерева). - Посмотреть сколько букв может быть на
каждом уровне. - Посчитать сколько получилось слов в итоге.
Каждый путь по этому “дереву” соответствует одному из способов выбора.
Число способов выбора равно числу точек в нижнем ряду “ дерева”.
ЗАКОН УМНОЖЕНИЯ
Путь также эти действия независимы, т.е. никак не связаны между собой. Тогда можно найти число способов выполнить первое и второе действие по формуле: C = A · B Закон умножения – это логическое «И», при котором нас интересует одновременное выполнение и первого, и второго действия.
ЗАКОН СЛОЖЕНИЯ
Закон сложения показывает, сколькими способами
можно выполнить сложное действие, которое состоит из
двух и более простых — при условии, что все они,
никогда не случаются одновременно.
Чтобы использовать закон сложения:
- нужно понять, каковы группы, из которых нужно выбрать 1 элемент;
- нужно выяснить количество элементов в каждой группе;
- нужно убедиться, что в различных группах, из которых выбирают элемент, нет одинаковых
элементов.
Пример:
Азбука Морзе позволяет кодировать символы для сообщений по радиосвязи, задавая комбинацию точек и тире. Сколько различных символов (цифр, букв, знаков пунктуации и т.д.) можно закодировать, используя код азбуки Морзе длиной не менее трёх и не более четырёх сигналов (точек и тире)?
ПЕРЕСТАНОВКИ
Вычисляя перестановки, определяется, сколькими различными способами можно переупорядочить элементы множества, не меняя их количество.
Пример:
Вася составляет 5-буквенные слова
из пяти буквенного алфавита (A, В, С, Д, Х). Каждая из допустимых букв может встречаться в слове только один раз. Словом, считается любая допустимая последовательность букв, не обязательно осмысленная. Сколько существует таких слов, которые может написать Вася?
Произведение подряд идущих первых n натуральных чисел обозначают n! и называют факториалом числа n.
0! = 1
1! = 1
2! = 1 · 2 = 2
3! = 1 · 2 · 3 = 6
4! = 1 · 2 · 3 · 4 = 24
n! = 1 · 2 · 3 · … · (n-1) · n
ПЕРЕСТАНОВКИ С ПОВТОРЕНИЯМИ
Вычисляя перестановки с повторениями, определяется, сколькими способами можно переставить n предметов, расположенных на n различных местах, если среди n предметов имеются k различных типов
ПРИМЕР: Саша составляет слова, переставляя буквы из слова «ИДИЛЛИЯ». Словом, считается любая допустимая последовательность букв, не обязательно осмысленная.
Сколько существует различных слов, которые может написать Саша?
РАЗМЕЩЕНИЯ
- Любой элемент может оказаться на любом из m мест, но использоваться может в выборке только один раз.
- Порядок элементов в выборке важен.
где m показывает количество элементов размещения (сколько элементов выбирается), n показывает количество элементов данного множества.
Пример:
Дана последовательность символов А, Б, С. Сколько вариантов кода, состоящего из двух разных символов, можно составить из заданной последовательности?
РАЗМЕЩЕНИЯ С ПОВТОРЕНИЯМИ
При этом:
- Допускается, что m>k.
- Любой элемент может оказаться на любом из m мест, и использоваться в выборке может несколько раз или не использоваться совсем.
- Порядок элементов в выборке важен.
СОЧЕТАНИЯ
Сочетаниями без повторений называются неупорядоченные наборы, содержащие m различных элементов из данных n элементов.
При этом:
- «неупорядоченные наборы», т.е. наборы AB и ВА – это одно и тоже сочетание.
- Любой элемент может оказаться на любом из m мест, но использоваться может в наборе только один раз.
- Порядок элементов в выборке не важен.
Пример:
В урне 10 белых шаров и 5 черных.
Сколькими способами можно вынуть наугад 3 белых шара?
СОЧЕТАНИЯ С ПОВТОРЕНИЯМИ
При этом:
- Наборы AB и ВА – это одно и тоже сочетание.
- Любой элемент может оказаться на любом из m мест, и использоваться может в наборе несколько раз.
- Порядок элементов в выборке не важен.
C = (k + m — 1)! / (m!(k-1)!)
Пример:
Сколько существует треугольников, длины сторон которых принимают одно из значений 4, 5, 6, 7
Перебор слов и системы счисления:
- Заменить буквы цифрами, начиная с 0.
- Записать слова в виде чисел в системе счисления N, равной количеству букв.
- Порядковый номер, написанный рядом с пунктом, всегда на единицу больше, располагающегося рядом числа в N-ричной системе счисления. Поэтому уменьшаем номер слова на единицу (M-1).
- Переводим число (М-1) из десятичной системы счисления в систему счисления с основанием N.
- Заменяем полученную последовательность цифр соответствующими буквами.
Пример 1:
Все трёхбуквенные слова, составленные из букв П, А, Р, У, С, записаны в алфавитном порядке и пронумерованы, начиная с 1. Начало списка выглядит так:
- ААА
- ААП
- ААР
- ААС
- ААУ
- АПА
- ….
Под каким номером в списке идёт первое слово, которое начинается с буквы С?
Пример 2:
Все 4-буквенные слова, составленные из букв А, Е, И, О записаны в алфавитном порядке и пронумерованы. Вот начало списка:
1. АААА
2. АААЕ
3. АААИ
4. АААО
5. ААЕА
…
Запишите слово, стоящее на 248-м месте от начала списка.
Важно: Нужно буквам присваивать цифры именно в том порядке, в котором они идут в самом столбце, потому что буквы могут дать в «перепутанном порядке» (например Е, А, И, О), и тогда ничего не получится.