freeCodeCamp/curriculum/challenges/russian/08-coding-interview-prep/project-euler/problem-391-hopping-game.ru...

56 lines
2.6 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: 5900f4f31000cf542c510006
challengeType: 5
title: 'Problem 391: Hopping Game'
videoUrl: ''
localeTitle: 'Проблема 391: Хоппинг'
---
## Description
<section id="description"> Пусть sk - число 1 при записи чисел от 0 до k в двоичном формате. Например, записывая от 0 до 5 в двоичном формате, мы имеем 0, 1, 10, 11, 100, 101. Есть семь 1, поэтому s5 = 7. Последовательность S = {sk: k ≥ 0} начинается {0, 1 , 2, 4, 5, 7, 9, 12, ...}. <p> В игре играют два игрока. Перед началом игры выбирается номер n. Счетчик c начинается с 0. На каждом шагу игрок выбирает число от 1 до n (включительно) и увеличивает c на это число. Результирующее значение c должно быть членом S. Если больше нет действительных ходов, игрок проигрывает. </p><p> Например: пусть n = 5. c начинается с 0. Игрок 1 выбирает 4, поэтому c становится 0 + 4 = 4. Игрок 2 выбирает 5, поэтому c становится 4 + 5 = 9. Игрок 1 выбирает 3, поэтому c становится 9 + 3 = 12. и т. Д. Обратите внимание, что c всегда должно принадлежать S, и каждый игрок может увеличить c не более чем на n. </p><p> Пусть M (n) - наибольшее число, которое первый игрок может выбрать при первом повороте, чтобы заставить победить, а M (n) = 0, если такого движения нет. Например, M (2) = 2, M (7) = 1 и M (20) = 4. </p><p> Для Σ (M (n)) 3 = 8150 для 1 ≤ n ≤ 20. </p><p> Найти Σ (M (n)) 3 для 1 ≤ n ≤ 1000. </p></section>
## Instructions
<section id="instructions">
</section>
## Tests
<section id='tests'>
```yml
tests:
- text: <code>euler391()</code> должен вернуть 61029882288.
testString: 'assert.strictEqual(euler391(), 61029882288, "<code>euler391()</code> should return 61029882288.");'
```
</section>
## Challenge Seed
<section id='challengeSeed'>
<div id='js-seed'>
```js
function euler391() {
// Good luck!
return true;
}
euler391();
```
</div>
</section>
## Solution
<section id='solution'>
```js
// solution required
```
</section>