20170828 換錢的最少貨幣張數 DP

2021-08-07 12:07:33 字數 612 閱讀 7378

20170828_換錢的最少貨幣張數

//換錢的最少貨幣張數_dp

/*題目:給定陣列arr,arr中所有的數字都是正整數且不重複。

每個值代表一種面值的貨幣,每種面值的貨幣都可以使用任意張。

再給定乙個整數aim代表要找的錢數,求組成aim的最少貨幣張數。

比如: arr=[5,2,3]

aim=20時,返回4

aim=10時,返回2

aim=7時,返回2

aim=6時,返回0

aim=1時,返回0

aim=0時,返回0

*//*動態規劃問題:dp問題

1、根據aim的大小,申請**dp[aim+1],初始化為0

2、當i>=0時,aim[i]代表兌換i元錢需要的最少貨幣張數。(0<=i<=aim)

3、狀態轉移方程,見程式

*/#include#include#include#include#includeusing namespace std;

class solution

system("pause");

return 0;

}

換錢最少貨幣數

給定陣列arr,arr中所有的值都為正數且不重複。每個值代表一種面值的貨幣,每種面值的貨幣可以使用任意張,在給定乙個整數aim代表要找的錢數,求組成aim的最少貨幣數。public class mincoins int len arr.length int max integer.max value...

換錢的最少貨幣數

題目 給定陣列arr,arr中所有的值都為正數且不重複。每個值代表一種面值的貨幣,每種面值的貨幣可以使用任意張,再給定乙個整數aim代表要找的錢數,求組成aim的最少貨幣數。舉例 arr 5,2,3 aim 20。4張5元可以組成20元,其他的找錢方案都要使用更多張的貨幣,所以返回4。arr 5,2...

換錢的最少貨幣數

題目一 給定陣列arr,arr中所有的值都為正數。每個值代表一種面值的貨幣,每種面值的貨幣可以使用任意張,再給定乙個整數aim代表要找的錢數,求組成aim的最少貨幣數。如 arr 5,2,3 aim 20.最少需要4張 解題思路 經典動態規劃一般分為3部,先求dp i j 矩陣中第一列的值,然後求d...