Java :: Aufgabe #239 :: Lösung #1
2 Lösungen
#239
Begleichung einer Rechnung ausschließlich mit Münzen
Anfänger - Java
von hollst
- 02.05.2019 um 15:46 Uhr
Angenommen, ihr hättet an der Kasse einen Betrag X zwischen (einschließlich) einem Cent und einem Euro zu bezahlen.
Schreibe ein Program, dass die Anzahl der Möglichkeiten berechnet, X ausschließlich mit 1, 2, 5 und 10 Cent-Münzen zu begleichen.
Beispiel: X = 5 Cent -> 4 Möglichkeiten (5; 2 + 2 + 1; 2 + 1 + 1+ 1; 1 + 1 + 1 + 1 + 1)
Achtung: für einen EURO (100 Cent) gibt es bereits 2.156 Möglichkeiten!
Viel Spaß!
Schreibe ein Program, dass die Anzahl der Möglichkeiten berechnet, X ausschließlich mit 1, 2, 5 und 10 Cent-Münzen zu begleichen.
Beispiel: X = 5 Cent -> 4 Möglichkeiten (5; 2 + 2 + 1; 2 + 1 + 1+ 1; 1 + 1 + 1 + 1 + 1)
Achtung: für einen EURO (100 Cent) gibt es bereits 2.156 Möglichkeiten!
Viel Spaß!
#1
von Rattlesnake (150 Punkte)
- 19.08.2019 um 17:20 Uhr
import java.util.Arrays;
public class Java_239 {
public static long waysToPay(int[] coinValues, int numCoins, int valueToPay){
//Tabelle speichert die Anzahl der Lösungen von i
long[] table = new long[valueToPay+1];
Arrays.fill(table,0);
table[0] = 1;
for (int i=0; i<numCoins; i++){
for (int j=coinValues[i]; j <=valueToPay; j++){
table[j] += table[j-coinValues[i]];
}
}
return table[valueToPay];
}
public static void main(String[] args) {
int arr[] = {1, 2, 5, 10};
int m = arr.length;
int n = 100;
long counter = waysToPay(arr,m,n);
System.out.println("Für den Betrag von " + n + " gibt es " + counter + " Möglichkeiten");
}
}Kommentare:
Für diese Lösung gibt es noch keinen Kommentar
Seite 1 von 0
1
