Решение настолько очевидное, что очень хочется усомниться в умственных способностях "Максимки".
Опишу решение, если ты не понимаешь:
Создать генератор деревьев (судя по всему, у "Максимки" он уже есть, т.к. иначе он бы задал вопрос: "А как генерить это дерево в принципе?").
При генерации дерева использовать не полный цикл, а половинный (т.е. не брать значение левых/правых координат).
Всё, генератор уполовиненных деревьев готов. Ещё как вариант через структурные блоки, но это, в теории, чуток медленнее. Да и удобства в подобной генерации нет.