Count Number of Texts LeetCode solution in Java

1
class Solution {
2
int mod = (1000000007);
3

4
public int countTexts(String pressedKeys) {
5
int[] key = new int[] {0, 0, 3, 3, 3, 3, 3, 4, 3, 4};
6
int n = pressedKeys.length();
7
int[] dp = new int[n + 1];
8
dp[n] = 1;
9

10
for (int ind = n - 1; ind >= 0; ind--) {
11
int count = 0;
12
int num = pressedKeys.charAt(ind) - '0';
13
int rep = key[num];
14
for (int i = 0;
15
i < rep
16
&& ind + i < pressedKeys.length()
17
&& pressedKeys.charAt(ind) == pressedKeys.charAt(ind + i);
18
i++) {
19
count += dp[ind + i + 1];
20
count %= mod;
21
}
22
dp[ind] = count;
23
}
24
return dp[0];
25
}
26
}

0

WPM •0 •0

100%

ACC •0 •0

0s

TIME •0