2021-06-15 00:49:18 -07:00
---
id: 5900f5091000cf542c51001b
2022-03-04 19:46:29 +05:30
title: 'Problema 408: Percorsi ammissibili attraverso una griglia'
2021-06-15 00:49:18 -07:00
challengeType: 5
forumTopicId: 302076
dashedName: problem-408-admissible-paths-through-a-grid
---
# --description--
2022-03-04 19:46:29 +05:30
Chiamiamo un punto del reticolo ($x$, $y$) inammissibile se $x$, $y$ e $x + y$ sono tutti quadrati positivi perfetti.
2021-06-15 00:49:18 -07:00
2022-03-04 19:46:29 +05:30
Ad esempio, (9, 16) è inammissibile, mentre (0, 4), (3, 1) e (9, 4) non lo sono.
2021-06-15 00:49:18 -07:00
2022-03-04 19:46:29 +05:30
Considera un percorso dal punto ($x_1$, $y_1$) al punto ($x_2$, $y_2$) usando solo i passi unitari nord o est. Chiamiamo tale percorso ammissibile se nessuno dei suoi punti intermedi è inammissibile.
2021-06-15 00:49:18 -07:00
2022-03-04 19:46:29 +05:30
Sia $P(n)$ il numero di percorsi ammissibili da (0, 0) a ($n$, $n$). Si può verificare che $P(5) = 252$, $P(16) = 596\\,994\\,440$ and $P(1\\,000)\bmod 1\\,000\\,000\\,007 = 341\\,920\\,854$.
2021-06-15 00:49:18 -07:00
2022-03-04 19:46:29 +05:30
Trova $P(10\\,000\\,000)\bmod 1\\,000\\,000\\,007$.
2021-06-15 00:49:18 -07:00
# --hints--
2022-03-04 19:46:29 +05:30
`admissiblePaths()` dovrebbe restituire `299742733` .
2021-06-15 00:49:18 -07:00
```js
2022-03-04 19:46:29 +05:30
assert.strictEqual(admissiblePaths(), 299742733);
2021-06-15 00:49:18 -07:00
```
# --seed--
## --seed-contents--
```js
2022-03-04 19:46:29 +05:30
function admissiblePaths() {
2021-06-15 00:49:18 -07:00
return true;
}
2022-03-04 19:46:29 +05:30
admissiblePaths();
2021-06-15 00:49:18 -07:00
```
# --solutions--
```js
// solution required
```