Registriert seit: 4. Sep 2004
1.465 Beiträge
Delphi 10.4 Sydney
|
Optimierte Zahlengruppen bilden
1. Mai 2008, 17:36
Hallo, ich habe ein kleines mathematisches Problem, das ich mit Delphi lösen möchte, vielleicht kann mir einer von den Mathematikern unter euch helfen?
Ich hab einen Menge von k Zahlen, z.B.: 31, 14, 84, 21, 31, 28, 99, 100, 211, 17, 28, 46, 145, 52, 82.
Diese Zahlen sollen nun so in Gruppen G1 - Gn aufgeteilt werden, dass folgende Bedingungen erfüllt sind:
0. Die Summe jeder Zahlengruppe Sn muss kleiner als ein vordefinierter Wert P sein.
1. Die Differenz zwischen Sn und P muss bei jeder Zahlengruppe möglichst klein sein.
1a. Die Summe der letzten Zahlengruppe Gn kann beliebig kleiner als P sein.
2. Die Summe der jeweiligen Differenzen zwischen der Gruppensumme Sn und P soll möglichst klein sein.
Ich könnte nun eine "Brut-Force"-Berechnung starten, indem ich alle möglichen Gruppenkombinationen durchprobiere, aber das würde bei einer etwas größeren Zahlenmenge ziemlich bald problematisch werden. Aber es muss sicher eine elegantere Lösung geben.
|