Le migliori 150 intervisteMedio

Cambio moneta II

Guida dettagliata e implementazione Python per il problema 'Coin Change II'.

Dichiarazione del problema

Medio

Ti viene fornita una serie di monete intere che rappresentano monete di diversi tagli e un importo intero che rappresenta un importo totale di denaro.

Restituisce il numero di combinazioni che compongono tale importo. Se tale somma di denaro non può essere costituita da nessuna combinazione di monete, restituisci 0.

Puoi supporre di avere un numero infinito di ciascun tipo di moneta.

Scrivi una funzione change(amount: int, coins: List[int]) -> int.

Vincoli
  • 1 <= len(coins) <= 300
  • 1 <= coins[i] <= 5000
  • 0 <= amount <= 5000

Esempi

Example 1
Input
amount = 5, coins = [1,2,5]
Output
4
Explanation

There are four ways to make up the amount: 5, 2+2+1, 2+1+1+1, 1+1+1+1+1.

Example 2
Input
amount = 3, coins = [2]
Output
0
Explanation

The amount of 3 cannot be made up with just 2s.

Need a Hint?
Prendi in considerazione l'utilizzo di strutture dati specifiche per DP 2D come set o heap.
Edge Cases to Watch
  • Strutture di input vuote
  • Ingressi a elemento singolo
  • Grandi limiti numerici

Pronto a risolvere?

Open the problem in PyRun's browser-based Python editor. Your code runs fully offline — no server required.

Apri nell'editor
Found this breakdown helpful?

PyRun is built and maintained by an independent solo developer. If this helped your interview prep, consider buying a coffee!

Buy me a coffee

Risorse Python consigliate

Espandi le tue conoscenze con tutorial interattivi, foglietti illustrativi e confronti di codici correlati.