Files

1.4 KiB
Raw Permalink Blame History

id, title, challengeType, forumTopicId, dashedName
id title challengeType forumTopicId dashedName
5900f47c1000cf542c50ff8e Problema 270: Corte dos quadrados 5 301920 problem-270-cutting-squares

--description--

Um pedaço de papel quadrado com dimensões inteiras N×N é colocado com um canto na origem e dois de seus lados ao longo dos eixos x e y. Depois, cortamos os quadrados respeitando as seguintes regras:

  • Fazemos apenas cortes retos entre dois pontos que estejam em lados diferentes do quadrado e que tenham como coordenadas números inteiros.
  • Dois cortes não podem se cruzar, mas vários cortes podem se encontrar no mesmo ponto das arestas.
  • Prosseguimos até que não seja possível fazer mais cortes.

Contando quaisquer reflexões ou rotações distintas, chamamos de C(N) o número de maneiras de cortar um quadrado N×N. Por exemplo, C(1) = 2 e C(2) = 30 (mostrados abaixo).

maneiras de cortar o quadrado 2x2, contando reflexões e rotações como distintas

Qual é o C(30)\bmod {10}^8 ?

--hints--

cuttingSquares() deve retornar 82282080.

assert.strictEqual(cuttingSquares(), 82282080);

--seed--

--seed-contents--

function cuttingSquares() {

  return true;
}

cuttingSquares();

--solutions--

// solution required