2.3 KiB
2.3 KiB
id, title, challengeType, forumTopicId, dashedName
id | title | challengeType | forumTopicId | dashedName |
---|---|---|---|---|
5900f5371000cf542c51004a | Завдання 459: Гра "Перегорталка" | 5 | 302133 | problem-459-flipping-game |
--description--
У цій грі двоє гравців грають на N
, користуючись N
квадратними панелями.
Кожен квадрат містить диск, що з однієї сторони чорний, а з іншої білий.
На початку гри всі диски перевернуті білою стороною.
Хід полягає в тому, щоб перевернути всі диски наступним чином:
- у верхньому правому кутку прямокутника повинен знаходитись білий диск
- ширина прямокутника - це квадратне число (1, 4, 9, 16, ...)
- висота прямокутника - трикутне число (1, 3, 6, 10, ...)

Гравці ходять по черзі. Гравець перемагає, перегорнувши диски на чорну сторону.
Нехай W(N)
буде кількістю виграшних ходів для першого гравця на дошці N
на N
з усіма білими дисками за умови бездоганної гри.
W(1) = 1
, W(2) = 0
, W(5) = 8
and W({10}^2) = 31\\,395
.
За N = 5
, вісьмома виграшними ходами гравця є:

Знайдіть W({10}^6)
.
--hints--
flippingGame()
має повернути 3996390106631
.
assert.strictEqual(flippingGame(), 3996390106631);
--seed--
--seed-contents--
function flippingGame() {
return true;
}
flippingGame();
--solutions--
// solution required