56 lines
1.5 KiB
Markdown
56 lines
1.5 KiB
Markdown
|
---
|
|||
|
id: 5900f51a1000cf542c51002d
|
|||
|
challengeType: 5
|
|||
|
title: 'Problem 430: Range flips'
|
|||
|
videoUrl: ''
|
|||
|
localeTitle: 'Problema 430: Variáveis de Intervalo'
|
|||
|
---
|
|||
|
|
|||
|
## Description
|
|||
|
<section id="description"> N discos são colocados em uma linha, indexados de 1 a N da esquerda para a direita. Cada disco tem um lado preto e um lado branco. Inicialmente, todos os discos mostram seu lado branco. <p> A cada turno, dois inteiros A e B, não necessariamente distintos, entre 1 e N (inclusive) são escolhidos uniformemente ao acaso. Todos os discos com um índice de A a B (inclusive) são invertidos. </p><p> O exemplo a seguir mostra o caso N = 8. No primeiro turno A = 5 e B = 2, e no segundo turno A = 4 e B = 6. </p><p> Seja E (N, M) o número esperado de discos que mostram seu lado branco após M turnos. Podemos verificar que E (3, 1) = 10/9, E (3, 2) = 5/3, E (10, 4) ≈ 5,157 e E (100, 10) ≈ 51,893. </p><p> Encontre E (1010, 4000). Dê sua resposta arredondada para 2 casas decimais atrás do ponto decimal. </p></section>
|
|||
|
|
|||
|
## Instructions
|
|||
|
<section id="instructions">
|
|||
|
</section>
|
|||
|
|
|||
|
## Tests
|
|||
|
<section id='tests'>
|
|||
|
|
|||
|
```yml
|
|||
|
tests:
|
|||
|
- text: <code>euler430()</code> deve retornar 5000624921.38.
|
|||
|
testString: 'assert.strictEqual(euler430(), 5000624921.38, "<code>euler430()</code> should return 5000624921.38.");'
|
|||
|
|
|||
|
```
|
|||
|
|
|||
|
</section>
|
|||
|
|
|||
|
## Challenge Seed
|
|||
|
<section id='challengeSeed'>
|
|||
|
|
|||
|
<div id='js-seed'>
|
|||
|
|
|||
|
```js
|
|||
|
function euler430() {
|
|||
|
// Good luck!
|
|||
|
return true;
|
|||
|
}
|
|||
|
|
|||
|
euler430();
|
|||
|
|
|||
|
```
|
|||
|
|
|||
|
</div>
|
|||
|
|
|||
|
|
|||
|
|
|||
|
</section>
|
|||
|
|
|||
|
## Solution
|
|||
|
<section id='solution'>
|
|||
|
|
|||
|
```js
|
|||
|
// solution required
|
|||
|
```
|
|||
|
</section>
|