We read every piece of feedback, and take your input very seriously.
To see all available qualifiers, see our documentation.
1 parent e0d851d commit 7213462Copy full SHA for 7213462
scripts/algorithms/K/Knight Dialer/Knight Dialer.js
@@ -1,21 +1,22 @@
1
+// Runtime: 139 ms (Top 83.33%) | Memory: 48.9 MB (Top 52.38%)
2
var knightDialer = function(n) {
-
3
+
4
let dp = Array(10).fill(1)
5
let MOD = 10**9 + 7
6
7
for(let i = 2; i <= n ; i++) {
8
oldDp = [...dp]
9
dp[0] = (oldDp[4] + oldDp[6]) % MOD
10
dp[1] = (oldDp[8] + oldDp[6]) % MOD
11
dp[2] = (oldDp[9] + oldDp[7]) % MOD
12
dp[3] = (oldDp[8] + oldDp[4]) % MOD
13
dp[4] = (oldDp[3] + oldDp[9] + oldDp[0]) % MOD
- dp[5] = 0
14
+ dp[5] = 0
15
dp[6] = (oldDp[0] + oldDp[7] + oldDp[1]) % MOD
16
dp[7] = (oldDp[6] + oldDp[2]) % MOD
17
dp[8] = (oldDp[3] + oldDp[1]) % MOD
18
dp[9] = (oldDp[4] + oldDp[2]) % MOD
19
}
20
21
return dp.reduce((ans, ele) => ans += ele, 0) % MOD
-};
22
+};
0 commit comments