freeCodeCamp/curriculum/challenges/portuguese/08-coding-interview-prep/project-euler/problem-325-stone-game-ii.p...

2.0 KiB

id challengeType title videoUrl localeTitle
5900f4b11000cf542c50ffc4 5 Problem 325: Stone Game II Problema 325: Stone Game II

Description

Um jogo é jogado com duas pilhas de pedras e dois jogadores. Por sua vez, um jogador remove um número de pedras da pilha maior. O número de pedras que ela remove deve ser um múltiplo positivo do número de pedras na pilha menor.

Por exemplo, deixe o par ordenado (6,14) descrever uma configuração com 6 pedras na pilha menor e 14 pedras na pilha maior, então o primeiro jogador pode remover 6 ou 12 pedras da pilha maior.

O jogador que pega todas as pedras de uma pilha ganha o jogo.

Uma configuração vencedora é aquela em que o primeiro jogador pode forçar uma vitória. Por exemplo, (1,5), (2,6) e (3,12) estão ganhando configurações porque o primeiro jogador pode remover imediatamente todas as pedras da segunda pilha.

Uma configuração perdedora é aquela em que o segundo jogador pode forçar uma vitória, não importando o que o primeiro jogador faça. Por exemplo, (2,3) e (3,4) estão perdendo configurações: qualquer jogada legal deixa uma configuração vencedora para o segundo jogador.

Defina S (N) como a soma de (xi + yi) para todas as configurações perdedoras (xi, yi), 0 <xi <yi ≤ N. Podemos verificar que S (10) = 211 e S (104) = 230312207313.

Encontre S (1016) mod 710.

Instructions

Tests

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

Challenge Seed

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

euler325();

Solution

// solution required