Summe aus Kombinationen /permutationen einer Liste mit einer Obergrenze

strußi

Top Contributor
Hallo Leute,

ich steh gerade extrem auf dem Schlauch.
Aufgabe: Man hat x Kassenzettel. Summiere diese so auf, dass eine Obergrenze mit möglichst kleinem Überschuss erreicht wird.

Ich häge da gerade voll in der Luft. Ich erinnere mich soetwas schon mal gemacht zu haben, finde das Programm aber nicht mehr.

Java:
import java.util.ArrayList;
import java.util.List;

public class BestWay{

    /**
     * @param args the command line arguments
     */
    public static void main( String[] args ){
        double sum =0; 
        double max =200d; //obergrenze
        //werte
        List<Double> values =new ArrayList<>();
        values.add( 46.38); values.add( 30.99); values.add( 11.10); values.add( 49.75);
        values.add( 29.79); values.add( 29.81 ); values.add( 42.47); values.add( 4.92);       
       
        for (int i=0; i < values.size(); i++){
           sum += values.get(i);
            for (int b=0; b < values.size(); b++){
                sum= sum + values.get(b);
                System.out.println(sum);
            }
        }
    }
   
}

Vielen Dank für eure Hilfe
 

strußi

Top Contributor
Es geht darum einen bestimmten Wert zu erreichen (hier 200). Ist es nicht möglich 200 exakt zu erreichen soll der Wert (>200) mögliches nahe bei 200 liegen.
 

strußi

Top Contributor
Meines Verständnisses nach: alle Permutationen erstellen und jedes neue Tupel addieren und schauen welches am nächsten dran ist
 

strußi

Top Contributor
erst einmal alle zahlen nebenander schreiben (liste, array wie auch immer) und anschließend die erste zahl behalten und die zweite durchschieben, ...
so erhalte ich einen haufen neuer Listen bei denen ich solange addiere bis ich >= 200 komme
 

Flown

Administrator
Mitarbeiter
Hier mal eine Hilfestellung (in Scala):
Code:
def nearestSum(limit : Double, numbers : Array[Double]) : Double = {
  def nearestSum(sum : Double, index : Int) : Double = {
    if(numbers.length == index || sum == limit) {
      sum
    } else {
      val x = nearestSum(sum + numbers(index), index + 1)
      val y = nearestSum(sum, index + 1)
      if(Math.abs(limit - x) < Math.abs(limit - y)) x else y
    }
  }
  nearestSum(0d, 0)
}
 
Ähnliche Java Themen
  Titel Forum Antworten Datum
S 100 als Summe Java Basics - Anfänger-Themen 16
I For Schleife Summe berechnen Java Basics - Anfänger-Themen 13
I aus 2 random zahlen soll nur die ungerade summe der beiden genommen werden. Java Basics - Anfänger-Themen 13
Ninum Summe Java Basics - Anfänger-Themen 3
Fats Waller Compiler-Fehler Kann ich einen String und die Summe zweier Char Werte mittels der println Anweisung ausgeben Java Basics - Anfänger-Themen 4
N 2D Array Summe erstellen Java Basics - Anfänger-Themen 6
Q Prüfen ob Zahl als Summe von Potenzen dargestellt werden kann. Java Basics - Anfänger-Themen 20
G Java 2-dimensionalen int-Array Summe Java Basics - Anfänger-Themen 2
L Max, min, Summe und Durchschnitt berechnen Java Basics - Anfänger-Themen 4
R Summe Java Basics - Anfänger-Themen 13
M Array Summe bestimmen? Java Basics - Anfänger-Themen 14
B Summe von Property innerhalb einer Liste via Lambda Java Basics - Anfänger-Themen 1
A Summe des Arrays pd mit alternativer Schleife Java Basics - Anfänger-Themen 2
L Anzahl der Paare deren Summe = 0 ergibt berechnen Java Basics - Anfänger-Themen 0
F Summe in einem Array bestimmen Java Basics - Anfänger-Themen 3
N Quadratische Matrix inkl Summe Java Basics - Anfänger-Themen 8
F Summe aller echten Teiler Java Basics - Anfänger-Themen 2
F Summe aller echten Teiler und Zahlen zurückgeben Java Basics - Anfänger-Themen 1
M Array Summe- wo ist der Fehler ? Java Basics - Anfänger-Themen 13
K Erste Schritte Berechnung der Summe zweier Arrays Java Basics - Anfänger-Themen 15
A Summe aller ungeraden Zahlen Java Basics - Anfänger-Themen 5
J ArrayList: summe aller Spielkarten Java Basics - Anfänger-Themen 15
L (Integer) Liste nach aufsteigender Summe der Ziffern sortieren (mit Bedingung) Java Basics - Anfänger-Themen 8
K Methode: Summe von n Zahlen Java Basics - Anfänger-Themen 24
P Altklausur: Abfrage der Summe Java Basics - Anfänger-Themen 9
D Summe berechnen mit verändertem Wert aus Schleife Java Basics - Anfänger-Themen 1
B summe von 2 Matrizen Java Basics - Anfänger-Themen 20
V Input/Output ArrayList Summe ausgeben Java Basics - Anfänger-Themen 57
B Serial Key prüfen -> String mit privatem Key und dann abgleichen; Summe = 0 Java Basics - Anfänger-Themen 8
B OOP Summe aus verschiedenen Instanzen einer Klasse berechnen Java Basics - Anfänger-Themen 2
L Array: Summe aller geraden und ungeraden Zahlen ermitteln Java Basics - Anfänger-Themen 9
Joew0815 summe aus einem aarray Java Basics - Anfänger-Themen 4
B Summe aller Zahlen von 1 bis zu dieser Zahl (ohne while oder for schleife) Java Basics - Anfänger-Themen 4
E Summe der "Nachbarn" eines Wertes in einem Array bestimmen Java Basics - Anfänger-Themen 8
P Schleife zur Berechnung von einer Summe Java Basics - Anfänger-Themen 16
G Rekursion Summe Java Basics - Anfänger-Themen 15
D Summe von Eingaben in einer for Schleife Java Basics - Anfänger-Themen 4
J Summe mit 45 nachkommastellen Java Basics - Anfänger-Themen 8
D Summe aller Positiven Integer aus einer Liste mit ActionObject Java Basics - Anfänger-Themen 2
V Programm summe Java Basics - Anfänger-Themen 11
I Summe eines Arrays ohne Schleife Java Basics - Anfänger-Themen 4
C Summe berechnen Java Basics - Anfänger-Themen 22
A Summe aller Natürlichen Zahlen - Methode Prüfen Java Basics - Anfänger-Themen 10
D Pyramide: Summe der diagonal über ihr stehenden Zahlen! Java Basics - Anfänger-Themen 6
A summe von m bis n mit for-Schleife Java Basics - Anfänger-Themen 5
M array - summe quer Java Basics - Anfänger-Themen 9
J summe von aufeinander folgenden floats eines arrays Java Basics - Anfänger-Themen 10
B array bestimmte summe berechnen Java Basics - Anfänger-Themen 4
S Summe Berechnen Java Basics - Anfänger-Themen 6
S Summe von Zufallszahlen Java Basics - Anfänger-Themen 9
Z Summe von Vektor-Elementen Java Basics - Anfänger-Themen 5
E Array gebildete Summe ausgeben Java Basics - Anfänger-Themen 5
D 100.0% gleichmäßig aufteilen, so dass Summe 100.0% sind, nicht 99,9% oder 100,1% Java Basics - Anfänger-Themen 3
M Rekursion Summe vom Array Java Basics - Anfänger-Themen 2
W sin-funktion x-wert der summe approximieren Java Basics - Anfänger-Themen 2
M Summe eines Arrays Java Basics - Anfänger-Themen 2
U Summe produkt von einem array Java Basics - Anfänger-Themen 9
J Summe postive Zahlen und negative Zahlen Java Basics - Anfänger-Themen 12
G Summe der Ziffern einer Zahl EFFIZIENT berechnen? Java Basics - Anfänger-Themen 18
J matrix nach summe der spalten sortieren Java Basics - Anfänger-Themen 5
Antoras Zahlen mischen und mit einer for-Schleife Summe berechnen Java Basics - Anfänger-Themen 12
G Summe zweier doubles falsch? Java Basics - Anfänger-Themen 10
G Md5 Summe eines Fileobjektes bilden Java Basics - Anfänger-Themen 4
G JTable Zwischenüberschriften bzw. Summe? Java Basics - Anfänger-Themen 2
L Berechnung Summe Java Basics - Anfänger-Themen 3
A String in Zahlen/Summe umformen Java Basics - Anfänger-Themen 2
R Summe Iterative Java Basics - Anfänger-Themen 6
S Summe innerhalb eines arrays? Java Basics - Anfänger-Themen 2
M summe von squares Java Basics - Anfänger-Themen 3
S Rekursive Kombinationen Java Basics - Anfänger-Themen 6
R0m1lly Kombinationen aus int array rekursiv Java Basics - Anfänger-Themen 2
C alle möglichen Kombinationen zweier Ziffern auf drei / vier / und 'n" Stellen Java Basics - Anfänger-Themen 11
C Array in allen Kombinationen ausfüllen Java Basics - Anfänger-Themen 17
D Alle möglichen Kombinationen in einem Array ausgeben Java Basics - Anfänger-Themen 2
L Best Practice Alle Kombinationen aus Listenelementen, Anzahl Listen unterschiedlich Java Basics - Anfänger-Themen 6
D Rekursiv Kombinationen ausgeben klappt nur bei einer Wiederholung Java Basics - Anfänger-Themen 4
Phash Kombinationen erzeugen Java Basics - Anfänger-Themen 4
L Kombinationen nur mit if/while erstellen Java Basics - Anfänger-Themen 2
B Kombinationen 3-dim Array Java Basics - Anfänger-Themen 5
D Kombinationen Quadratisches Array Java Basics - Anfänger-Themen 11
F 4 STrings in allen Kombinationen miteinander kombinieren Java Basics - Anfänger-Themen 2
F Kombinationen mit 3 Würfeln Java Basics - Anfänger-Themen 6
-horn- Alle Kombinationen von Zahlenreihe ohne Doppelungen Java Basics - Anfänger-Themen 6
L Kombinationen einer Menge rekursiv berechnen Java Basics - Anfänger-Themen 11
K Kombinationen der Elemente einer ArrayList Java Basics - Anfänger-Themen 4
C Alle Möglichen Kombinationen eines Arrays Java Basics - Anfänger-Themen 5
F Knifflig: Kombinationen von Zeiträumen Java Basics - Anfänger-Themen 3
M Kombinationen von Objekten bilden Java Basics - Anfänger-Themen 5
V Eingeschränkte permutationen Java Basics - Anfänger-Themen 2
P Permutationen einer Tour rekursiv Java Basics - Anfänger-Themen 4
J Permutationen Java Basics - Anfänger-Themen 3

Ähnliche Java Themen

Neue Themen


Oben