diff --git a/Project-Euler/Problem015.js b/Project-Euler/Problem015.js new file mode 100644 index 0000000000..d354047330 --- /dev/null +++ b/Project-Euler/Problem015.js @@ -0,0 +1,17 @@ +// https://projecteuler.net/problem=15 +/* Starting in the top left corner of a 2×2 grid, and only being able to move to +the right and down, there are exactly 6 routes to the bottom right corner. +How many such routes are there through a 20×20 grid? +*/ + +// A lattice path is composed of horizontal and vertical lines that pass through lattice points. + +const latticePath = (gridSize) => { + let paths + for (let i = 1, paths = 1; i <= gridSize; i++) { + paths = paths * (gridSize + i) / i + } + // The total number of paths can be found using the binomial coefficient (b+a)/a. + return paths +} +console.log(latticePath(20)) // output = 137846528820