2021-06-15 00:49:18 -07:00
---
id: 5900f5081000cf542c51001a
2021-11-29 08:32:04 -08:00
title: 'Problema 412: Númeração de Gnomon'
2021-06-15 00:49:18 -07:00
challengeType: 5
forumTopicId: 302081
dashedName: problem-412-gnomon-numbering
---
# --description--
2021-11-29 08:32:04 -08:00
Para números inteiros $m$, $n$ ($0 ≤ n < m$), considere $L(m, n)$ como uma grade $m× m$ grid com a parte superior direita $n× n$ da grade removida.
2021-06-15 00:49:18 -07:00
2021-11-29 08:32:04 -08:00
Por exemplo, $L(5, 3)$ terá essa aparência:
2021-06-15 00:49:18 -07:00
2021-11-29 08:32:04 -08:00
< img class = "img-responsive center-block" alt = "grade 5x5, com a grade 3x3 do canto superior direito removida" src = "https://cdn.freecodecamp.org/curriculum/project-euler/gnomon-numbering-1.png" style = "background-color: white; padding: 10px;" / >
2021-06-15 00:49:18 -07:00
2021-11-29 08:32:04 -08:00
Queremos numerar cada célula de $L(m, n)$ com números inteiros consecutivos 1, 2, 3, ... tal que o número em cada célula seja menor que o número abaixo e à esquerda dele.
2021-06-15 00:49:18 -07:00
2021-11-29 08:32:04 -08:00
Por exemplo, aqui temos duas numerações válidas de $L(5, 3)$:
2021-06-15 00:49:18 -07:00
2021-11-29 08:32:04 -08:00
< img class = "img-responsive center-block" alt = "duas numerações válidas de L(5, 3)" src = "https://cdn.freecodecamp.org/curriculum/project-euler/gnomon-numbering-2.png" style = "background-color: white; padding: 10px;" / >
Considere $LC(m, n)$ como a quantidade de numerações válidas de $L(m, n)$. Pode-se verificar que $LC(3, 0) = 42$, $LC(5, 3) = 250.250$, $LC(6, 3) = 406.029.023.400$ e $LC(10, 5)\bmod 76.543.217 = 61.251.715$.
Encontre $LC(10.000, 5.000)\bmod 76.543.217$.
2021-06-15 00:49:18 -07:00
# --hints--
2021-11-29 08:32:04 -08:00
`gnomonNumbering()` deve retornar `38788800` .
2021-06-15 00:49:18 -07:00
```js
2021-11-29 08:32:04 -08:00
assert.strictEqual(gnomonNumbering(), 38788800);
2021-06-15 00:49:18 -07:00
```
# --seed--
## --seed-contents--
```js
2021-11-29 08:32:04 -08:00
function gnomonNumbering() {
2021-06-15 00:49:18 -07:00
return true;
}
2021-11-29 08:32:04 -08:00
gnomonNumbering();
2021-06-15 00:49:18 -07:00
```
# --solutions--
```js
// solution required
```