SShapeCalyx
Сценарии

Сценарии работы с кодом · Число упорядоченных полных деревьев

03
Вокруг ваших задач

Конкретная отправная точка

Подсчитайте точными целыми числами формы упорядоченных полных двоичных деревьев с 0–100 внутренними узлами. Проверьте единственный лист и известные малые значения, отклоняя логические и выходящие за пределы аргументы без построения всех деревьев.

01

Откройте контекст

Выберите папку проекта и обозначьте нужные файлы или поведение.

02

Опишите изменение

Укажите входные данные, ожидаемый результат и границы, которые нужно сохранить.

03

Изучите работу

Проверьте предлагаемые изменения и команды, прежде чем полагаться на результат.

04

Проверьте результат

Сравните фактическое поведение с ожидаемым. Если проверка не проходит, разберитесь в причине перед следующими изменениями.

Число упорядоченных полных деревьев

Конкретная отправная точка
def tree_shapes(internal_nodes):
    if type(internal_nodes) is not int or not 0 <= internal_nodes <= 100:
        raise ValueError("shapes.nodes")
    counts = [1] + [0]*internal_nodes
    for size in range(1, internal_nodes+1):
        counts[size] = sum(counts[left]*counts[size-1-left] for left in range(size))
    return counts[internal_nodes]

Пример — отправная точка для реального проекта, а не утверждение, что сгенерированный код уже протестирован. Адаптируйте пути, зависимости и ожидаемое поведение к своему приложению.

Рабочая среда с ИИ для кода

Здесь начинается ваше следующее изменение.

Скачать для Windows ↗