题解 | #把数字翻译成字符串#
把数字翻译成字符串
https://www.nowcoder.com/practice/046a55e6cd274cffb88fc32dba695668
# # 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可 # # 解码 # @param nums string字符串 数字串 # @return int整型 # class Solution: def solve(self , nums: str) -> int: # 清除0 if nums == '0': return 0 # 清除10 和 20 if nums == '10' or nums == '20': return 1 n = len(nums) my_list1 = [str(i) for i in range(11,20)] my_list2 = [str(i) for i in range(21,27)] my_list1.extend(my_list2) print(my_list1) # 判断极端情况 100 200 3000 for i in range(1, n): if nums[i] == '0': # 一定是and if nums[i-1]!='1' and nums[i-1] != '2': return 0 dp = [1 for j in range(n)] if nums[0:2] in my_list1: dp[1]=2 print(dp) for i in range(2,n): if nums[i-1:i+1] in my_list1: dp[i] = dp[i-1] + dp[i-2] else: dp[i] = dp[i-1] print(dp) return dp[-1]