La tua domanda può essere riformulata così:
Dato un numero N, trovare tutti i set [S1, S2, S3 .....] in cui la somma di ogni set è uguale a N. La dimensione dei set è data dal numero L.
Prima prendiamo in considerazione il caso di L=2
.Questo significa che si possono avere i seguenti set
(9,1) , (8,2), (7,3) , (6,4) , (5,5)
chiamerò questa soluzione la base e presto capire perché .
Cambiamo la nostra L per 3 ora e rifare la nostra risposta:
Quindi prendiamo in considerazione il numero 9. Ha esistono un elenco del genere L
tale che sum(L) + 9 = 10
? La risposta ovvia è No, ma ciò che è interessante qui non è la risposta, ma la domanda stessa. Fondamentalmente stiamo chiedendo un set di elementi 2
che può essere riassunto come il numero 1
. Questo è lo stesso problema risolto dalla soluzione di base.
Così dunque per ogni numero x
in [9,8,7,6,5,4,3,2,1]
si tenta di trovare un set [a,b]
tale che x+a+b = 10
.
Questa non è una risposta completa, ma l'idea è che si vede il modello qui, e l'uso ricorsione per calcolare il caso base, come fatto in precedenza e quindi capire la chiamata ricorsiva che completerà la vostra soluzione. In bocca al lupo!
Il modo meno ambiguo/più accurato per definirlo sarebbe "interi positivi", piuttosto che "interi", "numeri" o "numeri interi". –
+1. Buona domanda. C'è un sacco di teoria su questo in Number Theory, fatto da G. H. Hardy e S. Ramanujan. – Guru