Как эффективно перебирать комбинации массивов с постоянной суммой?
У меня есть массив и его длинаX
, Каждый элемент массива имеет диапазон1 .. L
, Я хочу эффективно перебрать все комбинации массивов, которые имеют сумму.L
Правильные решения для: L = 4 и X = 2
1 3
3 1
2 2
Правильные решения для: L = 5 и X = 3
1 1 3
1 3 1
3 1 1
1 2 2
2 1 2
2 2 1
Наивная реализация (не удивительно) слишком медленная для моей проблемы (в моем случае X - до 8, а L - до 128).
Может кто-нибудь сказать мне, как эта проблема называется или где найти быстрый алгоритм для этой проблемы?
Спасибо!