Files

1.9 KiB
Raw Permalink Blame History

id, title, challengeType, forumTopicId, dashedName
id title challengeType forumTopicId dashedName
5900f4b71000cf542c50ffca Problema 331: Viradas cruzadas 5 301989 problem-331-cross-flips

--description--

Discos NxN são colocados em um tabuleiro de jogo quadrado. Cada disco tem um lado preto e um lado branco.

A cada turno você pode escolher um disco e virar todos os discos na mesma linha e na mesma coluna que este disco: portanto, 2 × N - 1 discos são virados. O jogo termina quando todos os discos mostrarem o lado branco. O exemplo a seguir mostra um jogo em um tabuleiro 5×5.

animação mostrando o jogo no tabuleiro 5x5

Pode-se provar que 3 é o número mínimo de turnos para terminar este jogo.

O disco do canto inferior esquerdo no tabuleiro N×N tem coordenadas (0, 0). O disco inferior direito tem coordenadas (N - 1,$0$) e o disco superior esquerdo têm coordenadas (0,$N - 1$).

Considere C_N como sendo a seguinte configuração de tabuleiro com N × N discos: um disco em (x, y) satisfazendo N - 1 \le \sqrt{x^2 + y^2} \lt N, shows exibe o lado preto; do contrário, ele exibe o lado branco. C_5 é mostrado acima.

Considere T(N) como o número mínimo de turnos para concluir um jogo começando da configuração C_N ou 0 se a configuração C_N não tiver resolução. Mostramos que T(5) = 3. Você também é informado de que T(10) = 29 e T(1.000) = 395.253.

Encontre \displaystyle \sum_{i = 3}^{31} T(2^i - i).

--hints--

crossFlips() deve retornar 467178235146843500.

assert.strictEqual(crossFlips(), 467178235146843500);

--seed--

--seed-contents--

function crossFlips() {

  return true;
}

crossFlips();

--solutions--

// solution required