File tree Expand file tree Collapse file tree 1 file changed +26
-0
lines changed Expand file tree Collapse file tree 1 file changed +26
-0
lines changed Original file line number Diff line number Diff line change
1
+ /**
2
+ * @param {number[] } coins
3
+ * @param {number } amount
4
+ * @return {number }
5
+ */
6
+ var coinChange = function ( coins , amount ) {
7
+ // dp[i]๋ ๊ธ์ก i๋ฅผ ๋ง๋ค๊ธฐ ์ํ ์ต์ ์ฝ์ธ ์
8
+ const dp = new Array ( amount + 1 ) . fill ( Infinity ) ;
9
+
10
+ // ๊ธ์ก 0์ ๋ง๋ค๊ธฐ ์ํด ํ์ํ ์ฝ์ธ ์๋ 0๊ฐ
11
+ dp [ 0 ] = 0 ;
12
+
13
+ // 1๋ถํฐ amount๊น์ง ๋ฐ๋ณต
14
+ for ( let i = 1 ; i <= amount ; i ++ ) {
15
+ // ๊ฐ ๊ธ์ก๋ง๋ค ๋ชจ๋ ์ฝ์ธ ์๋
16
+ for ( let coin of coins ) {
17
+ if ( i - coin >= 0 ) {
18
+ // ์ฝ์ธ์ ํ๋ ์ฌ์ฉํ์ ๋, ๋จ์ ๊ธ์ก์ ์ต์ ๊ฐ์ + 1
19
+ dp [ i ] = Math . min ( dp [ i ] , dp [ i - coin ] + 1 ) ;
20
+ }
21
+ }
22
+ }
23
+
24
+ // ๋ง์ฝ Infinity๋ฉด ๋ง๋ค ์ ์๋ ๊ธ์ก์
25
+ return dp [ amount ] === Infinity ? - 1 : dp [ amount ] ;
26
+ } ;
You canโt perform that action at this time.
0 commit comments