Skip to content

Commit ecf6fca

Browse files
authored
Create 91-decode-ways.js
1 parent 272d113 commit ecf6fca

File tree

1 file changed

+20
-0
lines changed

1 file changed

+20
-0
lines changed

91-decode-ways.js

Lines changed: 20 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,20 @@
1+
/**
2+
* @param {string} s
3+
* @return {number}
4+
*/
5+
const numDecodings = function(s) {
6+
if (s.length === 0) return 0
7+
const N = s.length
8+
const dp = Array(N + 1).fill(0)
9+
dp[0] = 1
10+
dp[1] = s[0] === "0" ? 0 : 1
11+
for (let i = 2; i <= N; i++) {
12+
if (s[i - 1] !== "0") {
13+
dp[i] += dp[i - 1]
14+
}
15+
if (s[i - 2] === "1" || (s[i - 2] === "2" && s[i - 1] <= "6")) {
16+
dp[i] += dp[i - 2]
17+
}
18+
}
19+
return dp[N]
20+
}

0 commit comments

Comments
 (0)