https://www.acmicpc.net/problem/10844
n = int(input())
stair = [[0, 0, 0, 0, 0, 0, 0, 0, 0, 0] for _ in range(n+1)]
stair[1] = [0, 1, 1, 1, 1, 1, 1, 1, 1, 1]
for i in range(2, n+1):
for j in range(10):
if j == 0:
stair[i][0] = stair[i-1][1]
elif j == 9:
stair[i][9] = stair[i-1][8]
else:
stair[i][j] = stair[i-1][j-1] + stair[i-1][j+1]
print(sum(stair[n]) % 1000000000)
'알고리즘 > 백준' 카테고리의 다른 글
백준 11053: 가장 긴 증가하는 부분 수열 (Python) (0) | 2022.04.07 |
---|---|
백준 2156: 포도주 시식 (Python) (0) | 2022.04.07 |
백준 1463: 1로 만들기 (Python) (0) | 2022.04.05 |
백준 2579: 계단 오르기 (Python) (0) | 2022.04.05 |
백준 1932: 정수 삼각형 (Python) (0) | 2022.04.01 |