class Solution:
def translateNum(self, num: int) -> int:
s=str(num)
a,b=1,1
for i in range(2,len(s)+1):
if "10"<=s[i-2:i] and s[i-2:i]<="25":
a,b=a+b,a
else:
a,b=a,a
return a
总结
这道题还是一道动态规划问题,携程的笔试题找出相同的字母编码和这道题是一个思路,具体思路参考力扣题解。
动态规划问题的首要解题思路是要找出状态转移方程,这点对我来说有困难,我都需要看别人的题解才能想出来,编程的题目都是要先找出简单的规律然后把这个规律归纳为公式,再根据这个公式写代码。