56 lines
2.4 KiB
Markdown
56 lines
2.4 KiB
Markdown
|
---
|
|||
|
id: 5900f51f1000cf542c510031
|
|||
|
challengeType: 5
|
|||
|
title: 'Problem 434: Rigid graphs'
|
|||
|
videoUrl: ''
|
|||
|
localeTitle: 'Problema 434: Gráficos rígidos'
|
|||
|
---
|
|||
|
|
|||
|
## Description
|
|||
|
<section id="description"> Lembre-se de que um grafo é uma coleção de vértices e arestas conectando os vértices, e que dois vértices conectados por uma aresta são chamados adjacentes. Os gráficos podem ser incorporados no espaço euclidiano associando cada vértice com um ponto no espaço euclidiano. Um grafo flexível é uma incorporação de um grafo onde é possível mover um ou mais vértices continuamente para que a distância entre pelo menos dois vértices não adjacentes seja alterada enquanto as distâncias entre cada par de vértices adjacentes são mantidas constantes. Um gráfico rígido é uma incorporação de um gráfico que não é flexível. Informalmente, um grafo é rígido se, ao substituir os vértices com dobradiças totalmente giratórias e as arestas com hastes que são inflexíveis e inelásticas, nenhuma parte do gráfico pode ser movida independentemente do resto do gráfico. <p> Os gráficos de grade incorporados no plano euclidiano não são rígidos, como demonstra a animação a seguir: No entanto, é possível torná-los rígidos adicionando bordas diagonais às células. Por exemplo, para o gráfico de grade de 2x3, há 19 maneiras de tornar o gráfico rígido: observe que, para o propósito desse problema, não consideramos alterar a orientação de uma aresta diagonal ou adicionar as arestas diagonais a uma célula como um diferente maneira de fazer um gráfico de grade rígido. </p><p> Seja R (m, n) o número de maneiras de tornar o gráfico de grade m × n rígido. Por exemplo, R (2,3) = 19 e R (5,5) = 23679901 </p><p> Defina S (N) como ∑R (i, j) para 1 ≤ i, j ≤ NEg S (5) = 25021721. Encontre S (100), dê sua resposta modulo 1000000033 </p></section>
|
|||
|
|
|||
|
## Instructions
|
|||
|
<section id="instructions">
|
|||
|
</section>
|
|||
|
|
|||
|
## Tests
|
|||
|
<section id='tests'>
|
|||
|
|
|||
|
```yml
|
|||
|
tests:
|
|||
|
- text: <code>euler434()</code> deve retornar 863253606.
|
|||
|
testString: 'assert.strictEqual(euler434(), 863253606, "<code>euler434()</code> should return 863253606.");'
|
|||
|
|
|||
|
```
|
|||
|
|
|||
|
</section>
|
|||
|
|
|||
|
## Challenge Seed
|
|||
|
<section id='challengeSeed'>
|
|||
|
|
|||
|
<div id='js-seed'>
|
|||
|
|
|||
|
```js
|
|||
|
function euler434() {
|
|||
|
// Good luck!
|
|||
|
return true;
|
|||
|
}
|
|||
|
|
|||
|
euler434();
|
|||
|
|
|||
|
```
|
|||
|
|
|||
|
</div>
|
|||
|
|
|||
|
|
|||
|
|
|||
|
</section>
|
|||
|
|
|||
|
## Solution
|
|||
|
<section id='solution'>
|
|||
|
|
|||
|
```js
|
|||
|
// solution required
|
|||
|
```
|
|||
|
</section>
|