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