eolymp
bolt
Спробуйте наш новий інтерфейс для відправки розв'язків

AVL

Ліміт часу 2 секунди
Ліміт використання пам'яті 256 MiB

AVL дерева, придумані російськими вченими Адельсон-Вельським та Ландісом, є прикладом збалансованого бінарного дерева пошуку. У термінології AVL, підвішене бінарне дерево називається збалансованим, якщо для кожної вершини висоти її лівого та правого піддерев відрізняються не більше, ніж на один. Таке дерево, власне, і називається AVL-деревом. Зрозуміло, існує далеко не єдине AVL-дерево при фіксованому числі вершин. Наприклад, існує шість AVL-дерев з п'ятьмома вершинами, вони зображені на рисунку нижче.

Дерева з одинаковим числом вершин можуть мати різну висоту, наприклад, на рисунку знизу нарисовано два дерева з сімома вершинами, які можуть мати висоти 2 та 3, відповідно.

Вам задано два числа - N та H, потрібно знайти число AVL-дерев, які складаються з N вершин і мають висоту H. Оскільки їх число досить велике, виведіть шукану кількість по модулю 786433.

Вхідні дані

Єдиний рядок вхідного файлу містить два числа - N та H (1N65535, 0H15).

Вихідні дані

Виведіть єдине число - кількість AVL-дерев з N вершинами висоти H, по модулю 786433.

Приклад

Вхідні дані #1
7 3
Вихідні дані #1
16