59 lines
2.0 KiB
Markdown
59 lines
2.0 KiB
Markdown
---
|
|
id: 5900f4f41000cf542c510007
|
|
title: 'Problema 392: Círculo unitário em malha'
|
|
challengeType: 5
|
|
forumTopicId: 302057
|
|
dashedName: problem-392-enmeshed-unit-circle
|
|
---
|
|
|
|
# --description--
|
|
|
|
Uma grade retilinear é uma grade ortogonal onde o espaçamento entre as linhas da grade não precisa ser equidistante.
|
|
|
|
Um exemplo desse tipo de grade é o papel gráfico logarítmico.
|
|
|
|
Considere as grades retilineares no sistema de coordenadas cartesiano com as seguintes propriedades:
|
|
|
|
- As linhas da grade são paralelas aos eixos do sistema de coordenadas cartesiano.
|
|
- Existem $N + 2$ linhas de grade verticais e $N + 2$ linhas de grade horizontais. Portanto, existem $(N + 1) \times (N + 1)$ células retangulares.
|
|
- As equações das duas linhas da grade verticais externas são $x = -1$ e $x = 1$.
|
|
- As equações das duas linhas da grade horizontais externas são $y = -1$ e $y = 1$.
|
|
- As células da grade são coloridas de vermelho se elas estiveres sobre o círculo unitário. Do contrário, elas serão pretas.
|
|
|
|
Para esse problema, gostaríamos que você encontrasse as posições das $N$ linhas de grade internas horizontais e das $N$ linhas de grade internas verticais restantes, de modo que a área ocupada pelas células vermelhas seja minimizada.
|
|
|
|
Ex: aqui vemos uma imagem da solução para $N = 10$:
|
|
|
|
<img class="img-responsive center-block" alt="solução para N = 10" src="https://cdn.freecodecamp.org/curriculum/project-euler/enmeshed-unit-circle.png" style="background-color: white; padding: 10px;" />
|
|
|
|
A área ocupada pelas células vermelhas para $N = 10$, arredondada para 10 casas depois da vírgula, é de 3,3469640797.
|
|
|
|
Encontre as posições para $N = 400$. Dê sua resposta como a área ocupada pelas células vermelhas arredondada para 10 casas depois da vírgula.
|
|
|
|
# --hints--
|
|
|
|
`enmeshedUnitCircle()` deve retornar `3.1486734435`.
|
|
|
|
```js
|
|
assert.strictEqual(enmeshedUnitCircle(), 3.1486734435);
|
|
```
|
|
|
|
# --seed--
|
|
|
|
## --seed-contents--
|
|
|
|
```js
|
|
function enmeshedUnitCircle() {
|
|
|
|
return true;
|
|
}
|
|
|
|
enmeshedUnitCircle();
|
|
```
|
|
|
|
# --solutions--
|
|
|
|
```js
|
|
// solution required
|
|
```
|