File tree Expand file tree Collapse file tree 1 file changed +25
-0
lines changed Expand file tree Collapse file tree 1 file changed +25
-0
lines changed Original file line number Diff line number Diff line change 1+ /**
2+ * μκ° λ³΅μ‘λ: O(amount * coins.length)
3+ * κ° κΈμ‘μ λν΄ λͺ¨λ λμ μ κ³ λ €ν΄μΌ ν¨
4+ */
5+
6+ /**
7+ * @param {number[] } coins
8+ * @param {number } amount
9+ * @return {number }
10+ */
11+ var coinChange = function ( coins , amount ) {
12+ const dp = new Array ( amount + 1 ) . fill ( Infinity ) ;
13+
14+ dp [ 0 ] = 0 ; // κΈμ‘ 0μ λμ μ΄ νμ μμ
15+
16+ for ( const coin of coins ) {
17+ for ( let i = coin ; i <= amount ; i ++ ) {
18+ // dp[i] : κΈμ‘ iλ₯Ό λ§λ€κΈ° μν μ΅μ λμ κ°μ
19+ // dp[i - coin] + 1 : νμ¬ λμ μ ν κ° μ¬μ©νκ³ λλ¨Έμ§ κΈμ‘(i - coin)μ λ§λλ μ΅μ λμ κ°μ
20+ dp [ i ] = Math . min ( dp [ i ] , dp [ i - coin ] + 1 ) ;
21+ }
22+ }
23+
24+ return dp [ amount ] === Infinity ? - 1 : dp [ amount ] ;
25+ } ;
You canβt perform that action at this time.
0 commit comments