разделение списка на части со сбалансированным весом

Мне нужен алгоритм для разделения списка значений на такие куски, сумма значений в каждом куске ( приблизительно ) равна (я полагаю, это некоторый вариант задачи о ранце )

Так, например, [1, 2 , 1, 4, 10, 3, 8] => [[8, 2], [10], [1, 3, 1, 4]]

Предпочтительны фрагменты одинаковой длины, но это не ограничение.

Python является предпочтительным языком, но приветствуются и другие

Edit: количество фрагментов определено

8
задан ts. 28 July 2011 в 07:31
поделиться