На 4 фиксированных вершинах («листьях») можно построить 3 плоских деревьев, у которых в каждой из остальных вершин сходятся ровно по 3 ребра.
Сколько таких деревьев можно построить на 6 вершинах (a, b, c, d, e, f)?
Заметим, что задача была бы проще, если бы в корне дерева сходились 2 ребра. Тогда дерево будет бинарным, то есть если его нарисовать по уровням — от корня к листьям, то из каждого узла будут выходить ровно две ветви. Количество бинарных деревьев описывается интересной комбинаторной последовательностью — числами Каталана.
Вот, например, рисунок со странички, где эти числа обсуждаются:
Если листья пронумеровать: L1, L2, ..., Ln, то описание различных деревьев можно описать с помощью скобок, описывающих, какие листья и ветки соединены. Например, деревьям на картинке соответствуют такие скобочные формулы (для краткости записи буква L опущена):
Эта идея позволяет написать формулу для чисел Каталана:
и может быть прочитано следующим образом. От корня идут две ветви — левая и правая. Распределение листьев между этими ветвями может быть таким: 1 + 3, 2 + 2, 3 + 1. Поскольку комбинации на каждой ветви не зависят от комбинаций на другой, применяем принцип умножения. Последовательно по полученной рекуррентной формуле можно вычислить: В нашей задаче из корня выходит три ветви, каждая из которых уже является бинарным деревом, поэтому нужно рассмотреть распределение листьев между тремя ветками и далее уже применить формулу для чисел Каталана:
Таких вариантов 10 и их тоже можно разделить на три группы:
а) три варианта со слагаемыми
б) шесть вариантов со слагаемыми
в) один вариант со слагаемыми
Таким образом, результат вычисляется по формуле:
Ответ: 28.