Числа Каталана — различия между версиями
Novik (обсуждение | вклад) (→Задача разбиения выпуклого n-угольника на треугольники не пересекающимися диагоналями) |
Novik (обсуждение | вклад) (→Числа Каталана) |
||
Строка 13: | Строка 13: | ||
Первые несколько чисел Каталана: | Первые несколько чисел Каталана: | ||
− | 1, 1, 2, 5, 14, 42, 132, 429, 1430, 4862, 16796, 58786, 208012, 742900, 2674440, 9694845, ... | + | <tex dpi = 120> 1, 1, 2, 5, 14, 42, 132, 429, 1430, 4862, 16796, 58786, 208012, 742900, 2674440, 9694845, ... </tex> |
</wikitex> | </wikitex> | ||
Версия 00:10, 14 ноября 2014
Содержание
Числа Каталана
<wikitex>
Определение: |
Числа Каталана — последовательность чисел, выражающих:
|
Первые несколько чисел Каталана:
</wikitex>
Некоторые задачи на числа Каталана
Задача разбиения выпуклого —угольника на треугольники не пересекающимися диагоналями
<wikitex> Ответ на задачу при
тривиален: никаких диагоналей проводить не надо. В четырёхугольнике можно провести любую из двух диагоналей, так что способов два. В пятиугольнике — из любой вершины две диагонали, способов. При — первый не вполне очевидный ответ: способов (см. рис.); чтобы не запутаться, сторона BC выделена и отдельно нарисованы разрезания, в которых к ней примыкают соответственно треугольники $BCA$, $BCF$, $BCE$ и $BCD$.Для семиугольника можно выделить одну из сторон и расклассифицировать разрезания в зависимости от того, какой треугольник к этой стороне примыкает. Имеем 5 разных случаев. В первом и последнем из них количество разбиений равно 14, ибо после отрезания треугольника остаётся шестиугольник. Во втором и четвёртом случаях при вырезании треугольника семиугольник распадается на треугольник и пятиугольник. В третьем случае семиугольник распадается на два четырёхугольника. Поскольку каждый из них можно разбить двумя способами, получаем
варианта. Итак, семиугольник можно разбить всего способами. Рассматривая восьмиугольник, аналогично получаем способа.Такие вычисления можно проводить и дальше. </wikitex>Задача расстановки скобок
<wikitex> Рассмотрим какое-нибудь арифметическое выражение и сотрём всё, кроме скобок. Получим некоторую систему открывающих и закрывающих скобок. Какими свойствами она обладает? Во-первых, открывающих скобок ровно столько же, сколько и закрывающих. Во-вторых, ни в каком начальном отрезке количество закрывающих скобок не может оказаться больше количества открывающих скобок. (Например, расстановки )( и ((())))( — неправильные.) Эти два условия не только необходимы, но и достаточны.
Рассмотрим несколько примеров. Одна пара скобок может выглядеть единственным способом: (). Две пары — двумя способами: ()() или (()). Три пары — пятью способами: ()()(), ()(()), (())(), (()()) или ((())). Четыре пары, как нетрудно проверить,— четырнадцатью способам и. Чтобы понять, сколькими способами могут выглядеть правильно расставленные пять пар скобок, рассмотрим закрывающую скобку, парную к первой открывающей скобке. Остальные четыре пары тогда разделятся на две группы: расположенные внутри рассмотренной пары и расположенные справа от неё. (Разумеется, любая из этих групп может состоять из 0 скобок.) Способов, когда все четыре пары внутри или все четыре справа, имеется по 14 штук. Когда три пары внутри, а одна справа, имеем 5 способов. Столько же — когда одна внутри, а три справа. Наконец, когда две пары внутри, а две справа, имеем 2 · 2 = 4 способа. Итого
14+5+2·2+5+14 = 42
способа. Следуя такому походу, можно вычислять количество правильных скобочных последовательностей дальше. </wikitex>
Рекуррентная формула чисел Каталана
<wikitex> <wikitex> $C_n = \sum_{i = 0}^{n - 1} C_i C_{n - 1 - i}$
Рекуррентную формулу легко вывести из задачи о правильных скобочных последовательностях.
Самой левой открывающей скобке $l$ соответствует определённая закрывающая скобка $r$, которая разбивает формулу на две части, каждая из которых в свою очередь является правильной скобочной последовательностью. Поэтому, если мы обозначим $i = r - l - 1$, то для любого фиксированного $r$ будет ровно $C_i C_{n-1-i}$ способов. Суммируя это по всем допустимым i, мы и получаем рекуррентную зависимость на $C_n$. </wikitex>
Аналитическая формула
<wikitex> $ C_n = \frac{1}{n+1} C_{2n}^{n} $
(здесь через $C_n^k$ обозначен, как обычно, биномиальный коэффициент).
Эту формулу проще всего вывести из задачи о монотонных путях. Общее количество монотонных путей в решётке размером $n \times n$ равно $C_{2n}^{n}$. Теперь посчитаем количество монотонных путей, пересекающих диагональ. Рассмотрим какой-либо из таких путей, и найдём первое ребро, которое стоит выше диагонали. Отразим относительно диагонали весь путь, идущий после этого ребра. В результате получим монотонный путь в решётке $(n - 1) \times (n + 1)$. Но, с другой стороны, любой монотонный путь в решётке $(n - 1) \times (n + 1)$ обязательно пересекает диагональ, следовательно, он получен как раз таким способом из какого-либо (причём единственного) монотонного пути, пересекающего диагональ, в решётке $n \times n$. Монотонных путей в решётке $(n - 1) \times (n + 1)$ имеется $C_{2n}^{n-1}$. В результате получаем формулу:
$ C_n = C_{2n}^{n} - C_{2n}^{n-1} = \frac{1}{n+1} C_{2n}^{n}$ </wikitex>
</wikitex>