freeCodeCamp/curriculum/challenges/portuguese/08-coding-interview-prep/project-euler/problem-459-flipping-game.p...

1.6 KiB

id challengeType title videoUrl localeTitle
5900f5371000cf542c51004a 5 Problem 459: Flipping game Problema 459: jogando o jogo

Description

O jogo de flipping é um jogo de dois jogadores jogado em um tabuleiro quadrado N por N. Cada quadrado contém um disco com um lado branco e um lado preto. O jogo começa com todos os discos mostrando seu lado branco.

Um turno consiste em inverter todos os discos em um retângulo com as seguintes propriedades: o canto superior direito do retângulo contém um disco branco, a largura do retângulo é um quadrado perfeito (1, 4, 9, 16, ...) a altura do retângulo é um número triangular (1, 3, 6, 10, ...)

Jogadores alternam turnos. Um jogador ganha girando a grade toda preta.

Seja W (N) o número de jogadas vencedoras para o primeiro jogador em uma mesa N por N com todos os discos em branco, assumindo uma jogada perfeita. W (1) = 1, W (2) = 0, W (5) = 8 e W (102) = 31395.

Para N = 5, os oito primeiros golpes vencedores do primeiro jogador são:

Encontre W (106).

Instructions

Tests

tests:
  - text: <code>euler459()</code> deve retornar 3996390106631.
    testString: 'assert.strictEqual(euler459(), 3996390106631, "<code>euler459()</code> should return 3996390106631.");'

Challenge Seed

function euler459() {
  // Good luck!
  return true;
}

euler459();

Solution

// solution required