2.6 KiB
id | challengeType | title | videoUrl | localeTitle |
---|---|---|---|---|
5900f4f31000cf542c510006 | 5 | Problem 391: Hopping Game | Проблема 391: Хоппинг |
Description
В игре играют два игрока. Перед началом игры выбирается номер n. Счетчик c начинается с 0. На каждом шагу игрок выбирает число от 1 до n (включительно) и увеличивает c на это число. Результирующее значение c должно быть членом S. Если больше нет действительных ходов, игрок проигрывает.
Например: пусть 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.
Пусть M (n) - наибольшее число, которое первый игрок может выбрать при первом повороте, чтобы заставить победить, а M (n) = 0, если такого движения нет. Например, M (2) = 2, M (7) = 1 и M (20) = 4.
Для Σ (M (n)) 3 = 8150 для 1 ≤ n ≤ 20.
Найти Σ (M (n)) 3 для 1 ≤ n ≤ 1000.
Instructions
Tests
tests:
- text: <code>euler391()</code> должен вернуть 61029882288.
testString: 'assert.strictEqual(euler391(), 61029882288, "<code>euler391()</code> should return 61029882288.");'
Challenge Seed
function euler391() {
// Good luck!
return true;
}
euler391();
Solution
// solution required