Изменения
→Разбиение на слагаемые: косметические изменения
'''int''' part2num(part: '''list<int>'''):
'''for''' i = 1 '''to''' part.size
'''for''' j = last '''to''' part[i] - 1 <font color=green>// перебираем все элементы, лексикографически меньшие нашеготекущего, но большие или равные не меньшие предыдущего</font>
numOfPart += d[N - sum - j][j] <font color=green>// прибавляем количество перестановок, которые могли начинаться с <tex>j</tex></font>
sum += part[i] <font color=green>// увеличиваем уже поставленную сумму</font>