71 lines
1.6 KiB
Markdown
71 lines
1.6 KiB
Markdown
![]() |
---
|
||
|
id: 5
|
||
|
localeTitle: 5900f4ae1000cf542c50ffc0
|
||
|
challengeType: 5
|
||
|
title: 'Problem 321: Swapping Counters'
|
||
|
---
|
||
|
|
||
|
## Description
|
||
|
<section id='description'>
|
||
|
Una fila horizontal compuesta por 2n + 1 cuadrados tiene n contadores rojos colocados en un extremo y n contadores azules en el otro extremo, separados por un solo cuadrado vacío en el centro. Por ejemplo, cuando n = 3.
|
||
|
|
||
|
|
||
|
|
||
|
Un contador puede moverse de una casilla a la siguiente (deslizar) o puede saltar sobre otro contador (salto) siempre que la casilla junto a ese contador esté desocupada.
|
||
|
|
||
|
|
||
|
|
||
|
Sea M (n) el número mínimo de movimientos / acciones para invertir completamente las posiciones de los contadores de colores; es decir, mueva todos los contadores rojos a la derecha y todos los contadores azules a la izquierda.
|
||
|
Se puede verificar M (3) = 15, que también es un número de triángulo.
|
||
|
|
||
|
Si creamos una secuencia basada en los valores de n para los que M (n) es un número de triángulo, los primeros cinco términos serían:
|
||
|
1, 3, 10, 22 y 63, y su suma sería 99.
|
||
|
|
||
|
Encuentra la suma de los primeros cuarenta términos de esta secuencia.
|
||
|
</section>
|
||
|
|
||
|
## Instructions
|
||
|
<section id='instructions'>
|
||
|
|
||
|
</section>
|
||
|
|
||
|
## Tests
|
||
|
<section id='tests'>
|
||
|
|
||
|
```yml
|
||
|
tests:
|
||
|
- text: <code>euler321()</code> debe devolver 2470433131948040.
|
||
|
testString: 'assert.strictEqual(euler321(), 2470433131948040, "<code>euler321()</code> should return 2470433131948040.");'
|
||
|
|
||
|
```
|
||
|
|
||
|
</section>
|
||
|
|
||
|
## Challenge Seed
|
||
|
<section id='challengeSeed'>
|
||
|
|
||
|
<div id='js-seed'>
|
||
|
|
||
|
```js
|
||
|
function euler321() {
|
||
|
// Good luck!
|
||
|
return true;
|
||
|
}
|
||
|
|
||
|
euler321();
|
||
|
```
|
||
|
|
||
|
</div>
|
||
|
|
||
|
|
||
|
|
||
|
</section>
|
||
|
|
||
|
## Solution
|
||
|
<section id='solution'>
|
||
|
|
||
|
```js
|
||
|
// solution required
|
||
|
```
|
||
|
</section>
|