class Solution(object):
def uniquePaths(self, m, n):
"""
:type m: int
:type n: int
:rtype: int
"""
dp = [[0 for j in range(n)] for i in range(m)]
dp[0][0] = 1
if n > 1:
dp[0][1] = 1
if m > 1:
dp[1][0] = 1
for i in range(m):
for j in range(n):
if i != 0 and j != 0:
dp[i][j] = dp[i-1][j]+dp[i][j-1]
elif i == 0 and j != 0:
dp[i][j] = dp[i][j-1]
elif i != 0 and j == 0:
dp[i][j] = dp[i-1][j]
return (dp[m-1][n-1])