Python/알고리즘

DP Level 3 등굣길 - python (프로그래머스)

구름용 2023. 6. 30. 22:17
def solution(m, n, puddles):
    answer = 0
    
    dp = [[0] * (m+1) for _ in range(n+1)]
    
    for puddle in puddles:
        x,y = puddle
        dp[y][x] = -1
        
    dp[1][1] = 1

    
    for y in range(1, n+1):

        for x in range(1, m+1):
            if x == 1 and y == 1:
                continue
            
            if dp[y][x] == -1:
                dp[y][x] = 0
            else:
                dp[y][x] = (dp[y-1][x] + dp[y][x-1]) % 1_000_000_007
                    
    return dp[n][m]