All challenges
Medium 0 solved 0% acceptance

Count Grid Paths

Count routes across a rectangular grid using only right and down moves.

Problem

Start at the top-left corner of a grid with rows by columns cells. Move along cell edges only, one edge right or one edge down at a time, until reaching the bottom-right corner. Count distinct move sequences. The grid has no obstacles.

A grid with 2 rows and 3 columns of cells needs exactly 2 down moves and 3 right moves.

Implement lattice_paths(rows, columns).

Input

rows: The number of rows of cells, not vertices.

columns: The number of columns of cells, not vertices.

Output

Return the number of corner-to-corner routes.

Constraints

0 ≤ rows, columns ≤ 30 and rows + columns ≤ 60. Zero in one dimension gives a straight route. A 0 × 0 grid has one empty route. Counts fit signed 64-bit.

Examples

Example 1
Input:
rows = 2
columns = 3

Expected output:
expected = 10
Input:
long long rows = 2;
long long columns = 3;

Expected output:
long long expected = 10;
Input:
long rows = 2;
long columns = 3;

Expected output:
long expected = 10;

Explanation

Every route contains five moves. Choosing which two are down gives ten distinct routes.

Example 2
Input:
rows = 0
columns = 4

Expected output:
expected = 1
Input:
long long rows = 0;
long long columns = 4;

Expected output:
long long expected = 1;
Input:
long rows = 0;
long columns = 4;

Expected output:
long expected = 1;

Explanation

There is only the straight route of four right moves.

References

This challenge is adapted for CodeUtility. Follow the statement and constraints above.

Learn from others

Community solutions

No published solutions yet. Solve this challenge to share the first one.