int uniquePaths(int m, int n) {
int N = m + n - 2, r = min(m, n)-1;
long long p = 1;
for(int i = 1 ; i <= r; i++){
p = (p *(N - i + 1))/i;
}
return p;
}
int uniquePaths(int m, int n) {
int N = m + n - 2, r = min(m, n)-1;
long long p = 1;
for(int i = 1 ; i <= r; i++){
p = (p *(N - i + 1))/i;
}
return p;
}