Условие
Представляя разбиения как неубывающие последовательности,
перечислить их в лексикографическом порядке. Пример для
n=4:
1+1+1+1,
1+1+2,
1+3,
2+2,
4.
Подсказка
Последний член увеличить нельзя, а предпоследний — можно;
если после увеличения на
1 предпоследнего члена за
счёт последнего нарушится возрастание, то из двух членов
надо сделать один, если нет, то последний член надо разбить
на слагаемые, равные предыдущему, и остаток, не меньший
его.
Источники и прецеденты использования
|
|
|
книга |
|
Автор |
А.Шень |
|
Название |
Программирование: теоремы и задачи |
|
Издательство |
МЦНМО |
|
Издание |
второе |
|
Год издания |
2004 |
|
глава |
|
Номер |
2 |
|
Название |
Порождение комбинаторных объектов |
|
параграф |
|
Номер |
4 |
|
Название |
Разбиения |
|
задача |
|
Номер |
2.4.3 |