'''
字符A-Z可以编码为1-26。"A"->"1", "Z"->"26"
现在输入一个数字序列,计算有多少种方式可以解码成字符A-Z组成的序列。
例如:
(1)输入:19
输出:2
(2)输入:268
输出:2
(3)输入:219
输出:3
'''
def how_many_ways(digitarray):
digitarray = str(digitarray).lstrip('0')
length = len(digitarray)
if length == 0:
return 0
li = list(range(length + 1))
li[0] = 1
print(li)
for i in range(1, length + 1):
if digitarray[i - 1] == '0':
print(digitarray[i - 1])
li[i] = 1
else:
li[i] = li[i - 1]
if i > 1 and (int(digitarray[i - 2]) == 2 and int(digitarray[i - 1]) <= 6) or int(digitarray[i - 2]) == 1:
li[i] += li[i - 2]
print(li)
print(li[length])