算法
(动态规划) $O(n)$
dp[i][0]表示当i索引的字符独立编码时,编码的种类;
dp[i][1]表示当i索引的字符与前一个字符联合编码时,编码的种类;
C++ 代码
class Solution {
public:
int getTranslationCount(string s) {
int n=s.size();
if(n==1)return 1;
int dp[n][2];
dp[0][0]=1;
dp[0][1]=0;
for(int i=1;i<n;i++){
dp[i][0]=dp[i-1][0]+dp[i-1][1];
if(s.substr(i-1,2)<"26"&&s.substr(i-1,2)>="10")dp[i][1]=dp[i-1][0];
else dp[i][1]=0;
}
return dp[n-1][0]+dp[n-1][1];
}
};