状态 : d p [ i ] [ j ] dp[i][j] dp[i][j] 前i种货币拼成总面值为j的所需要的最少硬币数
DP方程: d p [ i ] [ j ] = m i n ( d p [ i − 1 ] [ j ] , d p [ i − 1 ] [ j − c o i n s [ i ] + 1 ) dp[i][j] = min(dp[i-1][j],dp[i-1][j-coins[i]+1) dp[i][j]=min(dp[i−1][j],dp[i−1][j−coins[i]+1) 再用滚动数组优化一下空间。