- 정답률이 20%라 많이 어려운 문제라고 생각했는데 의외로 쉬웠던 문제였다. 근데 마지막의 문제 조건에 보면 나타낼 수 있는 가짓수가 많으니 1000000으로 나눈 나머지를 출력하라는 조건을 제대로 보지 않아 계속 틀렸다^^;;
012
0
import sys
input = sys.stdin.readline
num = list(input().strip())
dp = [0] * (len(num) + 1)
dp[0] = 1
dp[1] = 1
# 시작값이 0이면? → 애초에 나타낼 수 없으므로 0이 답
if num[0] == "0":
print(0)
else:
for i in range(2, len(num) + 1):
if int(num[i-1]) > 0:
dp[i] = dp[i-1]
if 10 <= int(num[i-2] + num[i-1]) <= 26:
dp[i] += dp[i-2]
print(dp[-1] % 1000000)
저도 개발자인데 같이 교류 많이 해봐요 ㅎㅎ! 서로 화이팅합시다!