[解決できなかった問題]伯俊2011



こんなやり方は全く思いもよらなかった.もちろん前にも含まれている言葉を信じなければなりません.
nums = list(map(int, input()))
l = len(nums)

d = [0] * (l+1)

if nums[0] == 0:
    print(0)
else:
    nums = [0] + nums
    d[0] = 1
    d[1] = 1
    for i in range(2, l+1):
        cur = nums[i]
        cur2 = nums[i-1] * 10 + nums[i]

        if 0 < cur < 10:
            d[i] += d[i-1]
        if 10 <= cur2 <= 26:
            d[i] += d[i-2]
    print(d[l] % 1000000)