Скажем, у нас есть факторы, некоторые списки простых факторов, такие как A, B, C, D, умноженные вместе равными целыми числами n
, и мы хотим генерировать каждую комбинацию факторизации не рекурсивно, как
[A, B, C, D]
[(A*B), C, D]
[(A*C),B,D]
[(A*D),C,D]
.... И
[(A*B*C),D]
... и т. Д. До тех пор, пока мы не сгенерируем все возможные комбинации, повторяющиеся факторинги в порядке. Основное беспокойство вызывает скорость алгоритма, потому что он пытается использовать это для максимально возможного числа простых факторов, таких как 100 простых факторов.
Есть ли хороший / эффективный алгоритм для этого, или библиотека, или язык программирования, который будет делать это. Спасибо