J'ai un grand tableau de longueur N, disons quelque chose comme :
2 4 6 7 6 3 3 3 4 3 4 4 4 3 3 1
Je dois diviser ce tableau en P sous-ensembles (dans cet exemple, P=4
serait raisonnable), de telle sorte que la somme des éléments de chaque sous-réseau soit aussi proche que possible de sigma, c'est-à-dire :
sigma=(sum of all elements in original array)/P
Dans cet exemple, sigma=15
.
Par souci de clarté, un résultat possible serait le suivant :
2 4 6 7 6 3 3 3 4 3 4 4 4 3 3 1
(sums: 12,19,14,15)
J'ai écrit un algorithme très naïf basé sur la façon dont je ferais les divisions à la main, mais je ne sais pas comment imposer la condition qu'une division dont les sommes sont (14,14,14,14,14,19) est pire qu'une division qui est (15,14,16,14,16).
Je vous remercie d'avance.