freeCodeCamp/curriculum/challenges/chinese/10-coding-interview-prep/project-euler/problem-15-lattice-paths.md

61 lines
1.0 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters!

This file contains ambiguous Unicode characters that may be confused with others in your current locale. If your use case is intentional and legitimate, you can safely ignore this warning. Use the Escape button to highlight these characters.

---
id: 5900f37b1000cf542c50fe8e
title: 问题15格子路径
challengeType: 5
videoUrl: ''
dashedName: problem-15-lattice-paths
---
# --description--
从2×2网格的左上角开始只能向右和向下移动右下角有6条路线。 ![6 2乘2网格的图表显示了右下角的所有路线](https://cdn-media-1.freecodecamp.org/imgr/1Atixoj.gif)
通过给定的`gridSize`有多少这样的路由?
# --hints--
`latticePaths(4)`应该返回70。
```js
assert.strictEqual(latticePaths(4), 70);
```
`latticePaths(9)`应该返回48620。
```js
assert.strictEqual(latticePaths(9), 48620);
```
`latticePaths(20)`应该返回137846528820。
```js
assert.strictEqual(latticePaths(20), 137846528820);
```
# --seed--
## --seed-contents--
```js
function latticePaths(gridSize) {
return true;
}
latticePaths(4);
```
# --solutions--
```js
function latticePaths(gridSize) {
let paths = 1;
for (let i = 0; i < gridSize; i++) {
paths *= (2 * gridSize) - i;
paths /= i + 1;
}
return paths;
}
```