Skip to content

Commit 2f54d7c

Browse files
authored
Create 279-perfect-squares.js
1 parent f59275e commit 2f54d7c

File tree

1 file changed

+18
-0
lines changed

1 file changed

+18
-0
lines changed

279-perfect-squares.js

Lines changed: 18 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,18 @@
1+
/**
2+
* @param {number} n
3+
* @return {number}
4+
*/
5+
const numSquares = function(n) {
6+
const dp = new Array(n+1).fill(Number.MAX_VALUE)
7+
dp[0] = 0
8+
for(let i = 1; i <= n; i++) {
9+
let min = Number.MAX_VALUE
10+
let j = 1
11+
while(i - j*j >= 0) {
12+
min = Math.min(min, dp[i-j*j] + 1)
13+
++j
14+
}
15+
dp[i] = min
16+
}
17+
return dp[n]
18+
};

0 commit comments

Comments
 (0)