cheetcode

106. Coin ChangeMedium

Find the fewest number of coins needed to make up the target amount.

You are given an integer array coins representing coin denominations and an integer amount representing a total amount of money.

Return the fewest number of coins needed to make up that amount, or -1 if it cannot be done.

Examples

Input: coins = [1,2,5], amount = 11
Output: 3
Input: coins = [2], amount = 3
Output: -1

Constraints

  • 1 <= coins.length <= 12
  • 1 <= coins[i] <= 2^31 - 1
  • 0 <= amount <= 10,000