Новосибирский Государственный Университет
Опубликован: 08.11.2006 | Доступ: свободный | Студентов: 1941 / 96 | Оценка: 4.27 / 4.09 | Длительность: 12:16:00
Специальности: Программист
Лекция 5:

Комбинаторика разбиений

< Лекция 4 || Лекция 5: 12 || Лекция 6 >
Аннотация: Введение. Задачи. Разные статистики. Деревья и перестановки из n элементов. Число сочетаний Cmn. Задачи на разбиение чисел. Комбинаторные задачи теории информации.

Введение

В задачах, которые мы сейчас рассмотрим, элементы делятся на группы, и надо найти все способы такого раздела. При этом могут встретиться различные случаи. Иногда существенную роль играет порядок элементов в группах: например, когда сигнальщик вывешивает сигнальные флаги на нескольких мачтах, то для него важно не только то, на какой мачте окажется тот или иной флаг, но и то, в каком порядке эти флаги развешиваются. В других же случаях порядок элементов в группах никакой роли не играет. Когда игрок в домино выбирает кости из кучи, ему безразлично, в каком порядке они придут, а важен лишь окончательный результат.

Отличаются задачи и по тому, играет ли роль порядок самих групп. При игре в домино игроки сидят в определенном порядке, и важно не только то, как разделились кости, но и то, кому какие кости достались. Если раскладывать фотографии по одинаковым конвертам, чтобы разослать их, то существенно, как распределяются фотографии по конвертам, но порядок самих конвертов совершенно несущественен.

Играет роль и то, различаем ли мы между собой сами элементы или нет, а также различаем ли между собой группы, на которые делятся элементы. Наконец, в одних задачах некоторые группы могут оказаться пустыми, то есть не содержащими ни одного элемента, а в других такие группы недопустимы. В соответствии со всем сказанным возникает целый ряд различных комбинаторных задач на разбиение.

Задачи

Общая постановка этих задач:

Задача 1. Раскладка по ящикам

Даны n различных предметов и k ящиков. Надо положить в первый ящик n_1 предметов, во второй - n_2 предметов,..., в k -й - n_k предметов, где n_1  + n_2  + \ldots  + n_k  =
n. Сколькими способами можно сделать такое распределение?

Число различных раскладок по ящикам равно

P(n_1,n_2,\ldots,n_k
) = \frac{{n!}}{{n_1 !n_2 !\ldots n_k! }}.
Эту формулу можно получить при решении следующей, на первый взгляд, совсем непохожей задачи:

Задача 2. Перестановки с повторением.

Имеются предметы k различных типов. Сколько различных перестановок можно сделать из n_1 предметов первого типа, n_2 предметов второго типа, ..., n_k предметов k -го типа? Число элементов в каждой перестановке равно n_1  + n_2  + \ldots  + n_k  = n . Поэтому если бы все элементы были различны, то число перестановок равнялось бы n! . Но из-за того, что некоторые элементы совпадают, получится меньшее число перестановок. В самом деле, возьмем, например, перестановку

\frac{aa..a}{n_1}\frac{bb\ldots b}{n_2} \ldots \frac{xx\ldots x}{n_3}, ( 5.1)
в которой сначала выписаны все элементы первого типа, потом все элементы второго типа, ..., наконец, все элементы k -го типа. Элементы первого типа можно переставлять друг с другом n_1! способами. Но так как все эти элементы одинаковы, то такие перестановки ничего не меняют. Точно так же ничего не меняют n_2! перестановок элементов второго типа, ..., n_k! перестановок элементов k -го типа.

Перестановки элементов первого типа, второго типа и так далее можно делать независимо друг от друга. Поэтому элементы перестановки 5.1. можно переставлять друг с другом n_1!n_2!\ldots n_k! способами так, что она остается неизменной. То же самое верно и для любого другого расположения элементов. Поэтому множество всех n! перестановок распадается на части, состоящие из n_1!n_2!\ldots n_k! одинаковых перестановок каждая. Значит, число различных перестановок с повторениями, которые можно сделать из данных элементов, равно

P(n_1,n_2,\ldots,n_k ) = \frac{{n!}}
{{n_1!n_2!\ldots n_k! }}, ( 5.2)
где n_1  + n_2  + \ldots  + n_k  = n.

Пользуясь формулой 5.2, можно ответить на вопрос: сколько перестановок можно сделать из букв слова "Миссисипи"? Здесь у нас одна буква "м", четыре буквы "и", три буквы "с" и одна буква "п", а всего 9 букв. Значит, по формуле 5.2 число перестановок равно

P(4,3,1,1)=\frac{{9!}}{{4!\cdot 3!\cdot 1!\cdot 1!}}=2520.
Чтобы установить связь между этими задачами, занумеруем все n мест, которые могут занимать наши предметы. Каждой перестановке соответствует распределение номеров мест на k классов. В первый класс попадают номера тех мест, на которые попали предметы первого типа, во второй - номера мест предметов второго типа и так далее. Тем самым устанавливается соответствие между перестановками с повторениями и раскладкой номеров мест по "ящикам". Понятно, что формулы решения задач оказались одинаковыми.

В рассмотренных задачах мы не учитывали порядок, в котором расположены элементы каждой части. В некоторых задачах этот порядок надо учитывать.

Задача 3. Флаги на мачтах.

Имеется n различных сигнальных флагов и k мачт, на которые их вывешивают. Значение сигнала зависит от того, в каком порядке развешены флаги. Сколькими способами можно развесить флаги, если все флаги должны быть использованы, но некоторые из мачт могут оказаться пустыми?

Каждый способ развешивания флагов можно осуществить в два этапа. На первом этапе мы переставляем всеми возможными способами данные n флагов. Это можно сделать n! способами. Затем берем один из способов распределения n одинаковых флагов по k мачтам (число этих способов C_{n+k-1}^{k-1} ). Пусть этот способ заключается в том, что на первую мачту надо повесить n_1 флагов, на вторую - n_2 флагов, ..., на kn_k флагов, где n_1  + n_2  + \ldots  + n_k  = n. Тогда берем первые n_1 флагов данной последовательности и развешиваем в полученном порядке на первой мачте; следующие n_2 флагов развешиваем на второй мачте и т.д. Ясно, что используя все перестановки n флагов и все способы распределения n одинаковых флагов по k мачтам, получим все способы решения поставленной задачи. По правилу произведения получаем, что число способов развешивания флагов равно

n!C_{n+k-1}^{k-1}=\frac{{(n+k-1)!}}{{(k-1)!}}=A_{n+k-1}^n. ( 5.3)
Вообще, если имеется n различных вещей, то число способов распределения этих вещей по k различным ящикам равно A_{n+k-1}^n.

Разные статистики

Задачи о раскладке предметов по ящикам весьма важны для статистической физики. Эта наука изучает, как распределяются по своим свойствам физические частицы; например, какая часть молекул данного газа имеет при данной температуре ту или иную скорость. При этом множество всех возможных состояний распределяют на большое число k маленьких ячеек (фазовых состояний), так что каждая из n частиц попадет в одну из ячеек.

Вопрос о том, какой статистике подчиняются те или иные частицы, зависит от вида этих частиц. В классической статистической физике, созданной Максвеллом и Больцманом, частицы считаются различимыми друг от друга. Такой статистике подчиняются, например, молекулы газа. Известно, что n различных частиц можно распределить по k ячейкам k^n способами. Если все эти k^n способов при заданной энергии имеют равную вероятность, то говорят о статистике Максвелла-Больцмана.

Оказалось, что этой статистике подчиняются не все физические объекты. Фотоны, атомные ядра и атомы, содержащие четное число элементарных частиц, подчиняются иной статистике, разработанной Эйнштейном и индийским ученым Бозе. В статистике Бозе-Эйнштейна частицы считаются неразличимыми друг от друга. Поэтому имеет значение лишь то, сколько частиц попало в ту или иную ячейку, а не то, какие именно частицы туда попали.

Однако для многих частиц, например таких как электроны, протоны и нейтроны, не годится и статистика Бозе-Эйнштейна. Для них в каждой ячейке может находится не более одной частицы, причем различные распределения, удовлетворяющие указанному условию, имеют равную вероятность. В этом случае может быть C_k^n различных распределений. Эта статистика называется статистикой Дирака-Ферми.

Деревья и перестановки из n элементов

С помощью леса можно представить перестановки из n элементов множества M =\{a;b;c;d\} (множество мы определяем так: множество - это неупорядоченная совокупность различных объектов или структура данных, используемая для представления множества). Подсчитаем, сколько можно получить перестановок. Для n такой лес изображен на рис. 5.1.

Всевозможные перестановки прочитываются по этой схеме от корневой до висячей вершины соответствующего дерева. Ярус показывает номер места, на котором расположен элемент. Число висячих вершин леса равно числу перестановок

Рис. 5.1. Всевозможные перестановки прочитываются по этой схеме от корневой до висячей вершины соответствующего дерева. Ярус показывает номер места, на котором расположен элемент. Число висячих вершин леса равно числу перестановок
< Лекция 4 || Лекция 5: 12 || Лекция 6 >