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