Sto cercando un algoritmo che generi tutte le permutazioni di partizioni a lunghezza fissa di un intero. L'ordine non ha importanza.Algoritmo per generare tutte le permutazioni univoche delle partizioni integer a lunghezza fissa?
Ad esempio, per n = 4 e lunghezza L = 3:
[(0, 2, 2), (2, 0, 2), (2, 2, 0),
(2, 1, 1), (1, 2, 1), (1, 1, 2),
(0, 1, 3), (0, 3, 1), (3, 0, 1), (3, 1, 0), (1, 3, 0), (1, 0, 3),
(0, 0, 4), (4, 0, 0), (0, 4, 0)]
I bumbled merito con divisori interi + permutazioni per divisori cui lunghezza è minore di L; ma che era troppo lento perché ho avuto nella stessa partizione più volte (perché [0, 0, 1]
può essere una permutazione di [0, 0, 1]
;-)
Qualsiasi aiuto apprezzato, e no, questo non è compito - interesse personale :-)
Non dovrebbe permutazioni di (2, 1, 1) essere in quella lista? –
Sapevo di aver dimenticato qualcosa. Grazie, aggiunto. – deleted77
Le autorizzazioni delle partizioni intere sono chiamate "composizioni". –