## 62. Unique Paths

A robot is located at the top-left corner of a m x n grid (marked ‘Start’ in the diagram below).

The robot can only move either down or right at any point in time. The robot is trying to reach the bottom-right corner of the grid (marked ‘Finish’ in the diagram below).

How many possible unique paths are there?

Above is a 7 x 3 grid. How many possible unique paths are there?Note:m and n will be at most 100.

class Solution {
public:
int uniquePaths(int m, int n) {
long a = (m > n ? m : n);
long b = (m < n ? m : n) - 1;

long c = b;
long res = 1;
while (c--) {
res *= a++;
}

long div = 1;
while (b != 0) {
div *= b--;
}

return res / div;
}
};