4.3 换钱的最少货币数

题目】:

  给定数组arr,arr中所有的值都为正数且不重复。每个值代表一种面值的货币,每种面值的货币都可以使用任意张,再给定一个整数aim代表要找的钱数,求组成aim的最少货币数

  举例:

    arr=[5, 2, 3],aim=20

    4张5元可以组成20元,其它的找钱方案都要使用更多张的货币,所以返回4

    arr=[5, 2, 3],aim=0

    不用任何货币就可以组成0元,返回0

    arr=[3, 5],aim=2

    根本无法组成2元,钱不能找开的情况下默认返回-1

补充题目】:

  给定数组arr,arr中所有的值都为正数。每个值仅代表一张钱的面值,再给定一个整数aim代表要找的钱数,求组成aim的最少货币数

  举例:

    arr=[5, 2, 3],aim=20

    5元、2元和3元的钱各有1张,所以无法组成20元,默认返回-1

    arr=[5, 2, 5, 3],aim=10

    5元的货币有2张,可以组成10元,且该方案所需张数最少,返回2

    arr=[5, 2, 5, 3],aim=15

    所有的钱加起来才能组成15元,返回4

    arr=[5, 2, 5, 3],aim=0

    不用任何货币就可以组成0元,返回0

猜你喜欢

转载自www.cnblogs.com/latup/p/9928416.html
4.3
今日推荐