Как нарезать палки, чтобы остался минимальный остаток?
Предположим у меня есть две палки длиной 200(см) Мне нужно получить много палок с длинами 40 30 35 30 40 25 55 40 90 5 (см)
Если подбирать вручную то получится
30+30+40+40+55 = 195(см)
25+35+40+90+5 = 195(см)
Остаток: 5+5 = 10(см)
Хотелось бы иметь какой-то алгоритм, который бы минимизировал остаток (может есть что-то готовое, не могу понять что делать если палок много и остатков разных тоже много, перебирать?)