알고리즘

[백준] 14494번 다이나믹이 뭐예요?

Suhyeon Lee 2022. 12. 11. 22:05
728x90

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

다이나나믹 프로그래밍으로 풀기 위해 점화식은 세웠는데, 초기값을 잘못 설정해서 답이 0이 나왔었다,,, 구글링을 통해 다른 사람들이 문제 푼 것을 참고하여 해결했다.

# 11494 : 다이나믹이 뭐예요?
import sys
input = sys.stdin.readline

n, m = map(int, input().rstrip().split())

# dp 테이블 초기화
d = [[0] * (m + 1) for _ in range(n + 1)]

d[0][0] = 1

for i in range(1, n + 1):
    for j in range(1, m + 1):
        # d[i - 1][j] : ↓
        # d[i][j - 1] : →
        # d[i - 1][j - 1] : ↘
        d[i][j] = (d[i - 1][j] + d[i][j - 1] + d[i - 1][j - 1]) % 1000000007

print(d[n][m])
728x90