def count_decodings(digits: str) -> int:
n = len(digits)
if n == 0 or digits[0] == '0':
return 0
dp = [0] * (n + 1)
dp[0] = 1
dp[1] = 1
for i in range(2, n + 1):
one_digit = int(digits[i-1:i])
if 1 <= one_digit <= 9:
dp[i] += dp[i-1]
two_digits = int(digits[i-2:i])
if 10 <= two_digits <= 26:
dp[i] += dp[i-2]
if dp[i] == 0:
return 0
return dp[n]
print(f"\"Результат\": {count_decodings('123123')}")
ZGVmIGNvdW50X2RlY29kaW5ncyhkaWdpdHM6IHN0cikgLT4gaW50OgogICAgbiA9IGxlbihkaWdpdHMpIAogICAgaWYgbiA9PSAwIG9yIGRpZ2l0c1swXSA9PSAnMCc6CiAgICAgICAgcmV0dXJuIDAKICAgIGRwID0gWzBdICogKG4gKyAxKQogICAgZHBbMF0gPSAxICAKICAgIGRwWzFdID0gMSAgCiAgICBmb3IgaSBpbiByYW5nZSgyLCBuICsgMSk6CiAgICAgICAgb25lX2RpZ2l0ID0gaW50KGRpZ2l0c1tpLTE6aV0pIAogICAgICAgIGlmIDEgPD0gb25lX2RpZ2l0IDw9IDk6CiAgICAgICAgICAgIGRwW2ldICs9IGRwW2ktMV0KICAgICAgICB0d29fZGlnaXRzID0gaW50KGRpZ2l0c1tpLTI6aV0pCiAgICAgICAgaWYgMTAgPD0gdHdvX2RpZ2l0cyA8PSAyNjoKICAgICAgICAgICAgZHBbaV0gKz0gZHBbaS0yXQogICAgICAgIGlmIGRwW2ldID09IDA6CiAgICAgICAgICAgIHJldHVybiAwCiAgICByZXR1cm4gZHBbbl0KcHJpbnQoZiJcItCg0LXQt9GD0LvRjNGC0LDRglwiOiB7Y291bnRfZGVjb2RpbmdzKCcxMjMxMjMnKX0iKSAgICAg