56 lines
1.4 KiB
Markdown
56 lines
1.4 KiB
Markdown
---
|
|
id: 5900f5091000cf542c51001b
|
|
challengeType: 5
|
|
title: 'Problem 408: Admissible paths through a grid'
|
|
videoUrl: ''
|
|
localeTitle: 'Problema 408: Caminos admisibles a través de una grilla.'
|
|
---
|
|
|
|
## Description
|
|
<section id="description"> Llamemos inadmisible un punto de celosía (x, y) si x, y y x + y son todos cuadrados perfectos positivos. Por ejemplo, (9, 16) es inadmisible, mientras que (0, 4), (3, 1) y (9, 4) no lo son. <p> Considere una ruta desde el punto (x1, y1) al punto (x2, y2) usando solo pasos de unidad hacia el norte o el este. Llamemos admisible a ese camino si ninguno de sus puntos intermedios es inadmisible. </p><p> Sea P (n) el número de rutas admisibles de (0, 0) a (n, n). Se puede verificar que P (5) = 252, P (16) = 596994440 y P (1000) mod 1 000 000 007 = 341920854. </p><p> Encontrar P (10 000 000) mod 1 000 000 007. </p></section>
|
|
|
|
## Instructions
|
|
<section id="instructions">
|
|
</section>
|
|
|
|
## Tests
|
|
<section id='tests'>
|
|
|
|
```yml
|
|
tests:
|
|
- text: <code>euler408()</code> debe devolver 299742733.
|
|
testString: 'assert.strictEqual(euler408(), 299742733, "<code>euler408()</code> should return 299742733.");'
|
|
|
|
```
|
|
|
|
</section>
|
|
|
|
## Challenge Seed
|
|
<section id='challengeSeed'>
|
|
|
|
<div id='js-seed'>
|
|
|
|
```js
|
|
function euler408() {
|
|
// Good luck!
|
|
return true;
|
|
}
|
|
|
|
euler408();
|
|
|
|
```
|
|
|
|
</div>
|
|
|
|
|
|
|
|
</section>
|
|
|
|
## Solution
|
|
<section id='solution'>
|
|
|
|
```js
|
|
// solution required
|
|
```
|
|
</section>
|