eolymp
bolt
Попробуйте наш новый интерфейс для отправки задач
Задачи

Б-деревья

Б-деревья

\textit{Если б дерево умело говорить...} Б-дерево - структура для хранения данных во вторичной памяти (например, на жёстком диске). Б-дерево обладает несколькими свойствами: \begin{enumerate} \item У каждой вершины, которая не является листом, количество детей не меньше \textbf{t} и не больше \textbf{2·t}, где \textbf{t} - параметр, который называется \textit{степенью ветвления}. \item В каждом листе хранится несколько ключей - от \textbf{t-1} до \textbf{2·t-1} штук. \item Расстояние от всех листьев до корня одинаково. \end{enumerate} Обратите внимание, что корень может являться листом. Два Б-дерева считаются различными, если они различны как графы с помеченными вершинами, или если вершина с одинаковыми пометками содержит различное количество ключей. Например, существует всего \textbf{8} различных Б-деревьев с четырьмя ключами и со степенью ветвления \textbf{2}: \includegraphics{https://static.e-olymp.com/content/04/04b06bb3f704c6815cac293ed81490510019fef8.jpg} Посчитайте количество различных Б-деревьев с \textbf{n} ключами в листьях и степенью ветвления \textbf{t}. \InputFile В первой строке находятся два натуральных числа \textbf{n} и \textbf{t} - количество ключей в листьях и степень ветвления, соответственно (\textbf{1} ≤ \textbf{n} ≤ \textbf{500}, \textbf{2} ≤ \textbf{t} ≤ \textbf{10^9}). \OutputFile В первой строке выведите единственное число без ведущих нулей - количество Б-деревьев с \textbf{n} ключами в листьях и степенью ветвления \textbf{t}
Лимит времени 5 секунд
Лимит использования памяти 64 MiB
Входные данные #1
4 2
Выходные данные #1
8
Автор Илья Разенштейн