Что такое amortizatordob?
Вы сначала попробуйте простые алгоритмы писать по нахождению расходов на разветвленках.
Пустяк на два разветвления. А потом попробуйте рекурсию разветвления сделать.
А потом поймете, что это не работает как надо. Нужно создавать замороченные связи между элементами.
Придется внедрять еще всякие штуки и так до бесконечности.
Я по началу думал, что получится найти один золотой алгоритм. Оказывается нет такого простого алгоритма.
Вот когда пройдете эти пути, который прошел я, тогда поймете алгоритм.
А так код сам по себе не понятен.
Тут подходит такая поговорка: Человек учится на своих ошибках. Чтобы понять как работает алгоритм просто начинайте делать свой.
До того результата, который у меня, уйдет наверно год времени...
А потом поймете, что это так сложно, что этому нужно посвятить все свободное время.
И тратить на это не месяцы а годы...