2024-10-06-동국대SW역량강화캠프-4075. 길 찾기
문제
북극곰 윌리는 N × N 격자미로에 갇혀 있다. 미로의 시작점은 가장 왼쪽 위 점이고, 미로의 도착점은 가장 오른쪽 아래 점이다. 미로는 길과 벽으로 이루어져 있다. 길은 .으로 표시되고, 벽은 * 로 표시된다. 북극곰 윌리는 길은 지나갈 수 있지만 벽은 지나갈 수 없고, 북극곰 윌리는 오른쪽이나 아래쪽으로만 이동할 수 있다. 북극곰 윌리가 미로의 시작점에서 출발해 도착점까지 갈 때 가능한 경로의 수를 구해보자.
입력
첫째 줄에 격자의 가로, 세로의 길이 N이 주어진다. (1 ≤ N ≤ 1000)
출력
첫째 줄에 북극곰 윌리가 찾을 수 있는 경로의 수를 10^9 - 7로 나눈 나머지를 출력한다.
예제 1 입력
4
....
.*..
...*
*...
예제 1 출력
3
Source
import sys
n = int(input())
arr = [[0 for _ in range(n)] for _ in range(n)]
for i in range(n):
arr[i] = sys.stdin.readline().rstrip()
dp = [[0 for _ in range(n + 1)] for _ in range(n + 1)]
dp[0][1] = 1
for i in range(1, n + 1):
for j in range(1, n + 1):
if(arr[i - 1][j - 1] == '*'):
continue
dp[i][j] = (dp[i - 1][j] + dp[i][j - 1]) % 1000000007
print(dp[n][n])