[실버1] 10844번 : 쉬운 계단 수

Quesuemon·2021년 3월 28일
0

코딩테스트 준비

목록 보기
21/111

🛠 문제

https://www.acmicpc.net/problem/10844


👩🏻‍💻 해결 방법

오르막 수 문제와 비슷한 방식으로 해결할 수 있었다
다만, 0과 9는 차이나는 수가 1개씩밖에 없으므로 따로 처리를 해주어야 했다

소스 코드

n = int(input())
dp = [[0 for _ in range(10)] for _ in range(101)]

for i in range(1, 10):
  dp[1][i] = 1

for i in range(2, n + 1):
  for j in range(10):
    if j == 0:
      dp[i][j] = dp[i - 1][1]
    elif j == 9:
      dp[i][j] = dp[i - 1][8]
    else:
      dp[i][j] = dp[i - 1][j - 1] + dp[i - 1][j + 1]

print(sum(dp[n]) % 1000000000)

0개의 댓글