Files

55 lines
2.5 KiB
Markdown
Raw Permalink Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

---
id: 5900f49f1000cf542c50ffb1
title: 'Проблема 306: Гра з паперовими стрічками'
challengeType: 5
forumTopicId: 301960
dashedName: problem-306-paper-strip-game
---
# --description--
Наведена нижче гра є класичним прикладом Теорії комбінаторіальної гри:
Двоє гравців починають з смужки $n$ білих квадратів і почергово ходять. Під час кожного ходу, гравець вибирає два суміжних білих квадратики і розмальовує їх у чорний колір. Перший гравець, який не може зробити хід - програє.
- $n = 1$: Немає дійсних кроків, тому перший гравець автоматично програє.
- $n = 2$: Лише один дійсний крок, після якого другий гравець програє.
- $n = 3$: два дійсні кроки, але обидва залишають положення, де другий гравець програє.
- $n = 4$: Є три дійсні кроки для першого гравця; який може виграти гру замалювавши два середніх квадрати.
- $n = 5$: чотири дійсні кроки для першого гравця (показано нижче червоним кольором); але незважаючи на те, що буде робити гравець, другий гравець (синій) виграє.
<img class="img-responsive center-block" alt="дійсний початок ходів для смужки на 5 квадратів" src="https://cdn.freecodecamp.org/curriculum/project-euler/paper-strip-game.gif" style="background-color: white; padding: 10px;" />
Тому за $1 ≤ n ≤ 5$, є 3 значення $n$, для яких перший гравець може прийти до виграшу.
Тому за $1 ≤ n ≤ 50$, є 40 значень $n$, для яких перший гравець може прийти до виграшу.
Що за $1 ≤ 1\\,000\\,000$, скільки значень $n$ для чого перший гравець може виграти?
# --hints--
`paperStripGame()` має повернути `852938`.
```js
assert.strictEqual(paperStripGame(), 852938);
```
# --seed--
## --seed-contents--
```js
function paperStripGame() {
return true;
}
paperStripGame();
```
# --solutions--
```js
// solution required
```