Числа Каталана — различия между версиями
Novik (обсуждение | вклад) (→Числа Каталана) |
Novik (обсуждение | вклад) |
||
Строка 1: | Строка 1: | ||
+ | ==Числа Каталана== | ||
+ | |||
<wikitex> | <wikitex> | ||
{{Определение | {{Определение | ||
Строка 14: | Строка 16: | ||
</wikitex> | </wikitex> | ||
− | ==Задача разбиения выпуклого n-угольника на треугольники не пересекающимися диагоналями== | + | ==Некоторые задачи на числа Каталана== |
+ | |||
+ | ===Задача разбиения выпуклого n-угольника на треугольники не пересекающимися диагоналями=== | ||
<wikitex> | <wikitex> | ||
Ответ на задачу при $n$ = 3 тривиален: никаких | Ответ на задачу при $n$ = 3 тривиален: никаких | ||
Строка 35: | Строка 39: | ||
</wikitex> | </wikitex> | ||
− | ==Задача расстановки скобок== | + | ===Задача расстановки скобок=== |
<wikitex> | <wikitex> | ||
Рассмотрим какое-нибудь арифметическое выражение и сотрём всё, кроме скобок. | Рассмотрим какое-нибудь арифметическое выражение и сотрём всё, кроме скобок. | ||
Строка 57: | Строка 61: | ||
==Рекуррентная формула чисел Каталана== | ==Рекуррентная формула чисел Каталана== | ||
<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> | </wikitex> |
Версия 23:23, 13 ноября 2014
Содержание
Числа Каталана
<wikitex>
Определение: |
Числа Каталана — последовательность чисел, выражающих:
|
Первые несколько чисел Каталана:
1, 1, 2, 5, 14, 42, 132, 429, 1430, 4862, 16796, 58786, 208012, 742900, 2674440, 9694845, ... </wikitex>
Некоторые задачи на числа Каталана
Задача разбиения выпуклого n-угольника на треугольники не пересекающимися диагоналями
<wikitex> Ответ на задачу при $n$ = 3 тривиален: никаких диагоналей проводить не надо. В четырёх угольнике можно провести любую из двух диагоналей, так что способов два. В пятиугольнике — из любой вершины две диагонали, 5 способов. При $n$ = 6 — первый не вполне очевидный ответ: 14 способов (см. рис.); чтобы не запутаться, сторона BC выделена и отдельно нарисованы разрезания, в которых к ней примыкают соответственно треугольники $BCA$, $BCF$, $BCE$ и $BCD$.
Для семиугольника можно выделить одну из сторон и расклассифицировать разрезания в зависимости от того, какой треугольник к этой стороне примыкает. Имеем 5 разных случаев. В первом и последнем из них количество разбиений равно 14, ибо после отрезания треугольника остаётся шестиугольник. Во втором и четвёртом случаях при вырезании треугольника семиугольник распадается на треугольник и пятиугольник. В третьем случае семиугольник распадается на два четырёхугольника. Поскольку каждый из них можно разбить двумя способами, получаем
2·2 = 4
варианта. Итак, семиугольник можно разбить всего
14+5+2·2+5+14 = 42
способами. Рассматривая восьмиугольник, аналогично получаем
42+14+2·5+5·2+14+42 = 132
способа.Такие вычисления можно проводить и дальше. </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>