leetcode518

1  クラスソリューション{
 2      公共の int型の変化(INTの量は、int型{[]硬貨)
 3          であれば(量== 0 ){
 4              リターン 1 5          }
 6          場合(コイン== NULL || coins.length == 0 ){
 7              戻り 0 ;
8          }
 9          INT [] DP = 新しい INT [量+ 1 ]。
10          DP [ 0 ] = 1;
11          のためのint型コイン:コイン){
 12              のためのint型 I =コイン; iが<=量; Iは++ ){
 13                  、DP [I] + = DP [I - コイン]。
14              }
 15          }
 16          リターンDP [量]。
17      }
 18 }

 

コントラストleetcode322

1つの パブリック クラスソリューション{
 2      公共 INT coinChange(INT []コイン、int型の量){
 3          であれば(量== 0戻り 0 ;
4          INT [] DP = 新しい INT [量+ 1 ]。
5          DP [ 0 ] = 0 6          のためにint型 i = 1 ; iが<=量; iは++ ){
 7              DP [I] = Integer.MAX_VALUEの;
8              についてINT K:コイン){
 9                  もし(!I> = K && DP [IK] = Integer.MAX_VALUEの){
 10                      、DP [i]は= Math.min(DP [IK] + 1 、DP [I])。
11                  }
 12              }
 13          }
 14          であれば(DP [量] <Integer.MAX_VALUEの&& DP [量]> 0 ){
 15              リターンDP [量]。
16          } {
 17              リターン - 1 18          }
 19  
20      }
 21 }

 

おすすめ

転載: www.cnblogs.com/asenyang/p/11007415.html