Mi è piaciuto leggere questo sito; questa è la mia prima domanda Le modifiche sono benvenute.
Dati interi positivi n e m , calcola tutte le partizioni ordinate di m in n esattamente parti intere positive e stampale delimitate da virgole e newline. Qualsiasi ordine va bene, ma ogni partizione deve apparire esattamente una volta.
Ad esempio, dati m = 6 e n = 2, le partizioni possibili sono coppie di numeri interi positivi che si sommano a 6:
1,5
2,4
3,3
4,2
5,1
Si noti che [1,5] e [5,1] sono partizioni ordinate diverse. L'output dovrebbe essere esattamente nel formato sopra, con una nuova riga finale facoltativa. (EDIT: l'ordine esatto delle partizioni non ha importanza). L'ingresso / uscita avviene tramite I / O di codice golf standard .
Un altro esempio di output per m = 7, n = 3:
1,1,5
1,2,4
2,1,4
1,3,3
2,2,3
3,1,3
1,4,2
2,3,2
3,2,2
4,1,2
1,5,1
2,4,1
3,3,1
4,2,1
5,1,1
Vince il codice più piccolo in byte dopo 1 settimana.
Ancora una volta, si prega di modificare se necessario.
Addendum:
@TimmyD ha chiesto quale dimensione di input intero deve supportare il programma. Non esiste un minimo minimo oltre gli esempi; in effetti, la dimensione dell'output aumenta in modo esponenziale, approssimativamente modellato da: lines = e ^ (0.6282 n - 1.8273).
n | m | lines of output
2 | 1 | 1
4 | 2 | 2
6 | 3 | 6
8 | 4 | 20
10 | 5 | 70
12 | 6 | 252
14 | 7 | 924
16 | 8 | 3432
18 | 9 | 12870
20 | 10 | 48620
22 | 11 | 184756
24 | 12 | 705432