2.3 KiB
id, title, challengeType, forumTopicId, dashedName
id | title | challengeType | forumTopicId | dashedName |
---|---|---|---|---|
5900f4f31000cf542c510006 | Завдання 391: Гра класики | 5 | 302056 | problem-391-hopping-game |
--description--
Нехай s_k
буде кількістю одиниць при записі чисел від 0 до k
у двійковій системі.
Наприклад, записуючи числа від 0 до 5 у двійковій системі, ми маємо 0, 1, 10, 11, 100, 101. Є сім одиниць, тому s_5 = 7
.
Послідовність S = \\{s_k : k ≥ 0\\}
починається з \\{0, 1, 2, 4, 5, 7, 9, 12, \ldots\\}
.
Грають два гравці. Перед початком гри обрано число 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
.
Це може бути підтверджено \sum M{(n)}^3 = 8150
за 1 ≤ n ≤ 20
.
Знайдіть \sum M{(n)}^3
за 1 ≤ 1000
.
--hints--
hoppingGame()
повинен повертатися як 61029882288
.
assert.strictEqual(hoppingGame(), 61029882288);
--seed--
--seed-contents--
function hoppingGame() {
return true;
}
hoppingGame();
--solutions--
// solution required