Medium
Coin Change
Medium
0 submissions
25 coins
+100 XP
Array
Breadth-First Search
Dynamic Programming
Problem Description
# Coin Change
You are given an integer array `coins` representing coins of different denominations and an integer `amount` representing a total amount of money.
Return *the fewest number of coins that you need to make up that amount*. If that amount of money cannot be made up by any combination of the coins, return `-1`.
You may assume that you have an infinite number of each kind of coin.
## Example 1
```
Input: coins = [1,2,5], amount = 5
Output: 5
Explanation: 5 = 5 (one coin).
Smallest number of coins needed = 1.
```
## Example 2
```
Input: coins = [2], amount = 3
Output: -1
```
## Example 3
```
Input: coins = [10], amount = 10
Output: 1
```
## Constraints
- `1 <= coins.length <= 12`
- `1 <= coins[i] <= 2³¹ - 1`
- `0 <= amount <= 10⁴`
Constraints
- 1 <= coins.length <= 12\n- 1 <= coins[i] <= 2³¹ - 1\n- 0 <= amount <= 10⁴
Need help?
Connect with expert programmers for real-time collaborative coding, video meetings, and whiteboard sessions via CodeConnect.
Video Call
Whiteboard
Live Coding
Screen Share