56 lines
1.9 KiB
Markdown
56 lines
1.9 KiB
Markdown
---
|
|
id: 5900f4481000cf542c50ff5b
|
|
challengeType: 5
|
|
title: 'Problem 220: Heighway Dragon'
|
|
videoUrl: ''
|
|
localeTitle: 'Problema 220: Heighway Dragon'
|
|
---
|
|
|
|
## Description
|
|
<section id="description"> Sea D0 la cadena de dos letras "Fa". Para n≥1, derive Dn de Dn-1 mediante las reglas de reescritura de cadenas: <p> "a" → "aRbFR" "b" → "LFaLb" </p><p> Por lo tanto, D0 = "Fa", D1 = "FaRbFR", D2 = "FaRbFRRLFaLbFR", y así sucesivamente. </p><p> Estas cadenas pueden interpretarse como instrucciones para un programa de gráficos de computadora, con "F" que significa "dibujar una unidad", "L" que significa "girar a la izquierda 90 grados", "R" que significa "girar a la derecha 90 grados" y "a "y" b "siendo ignorados. La posición inicial del cursor de la computadora es (0,0), apuntando hacia arriba (0,1). </p><p> Entonces Dn es un dibujo exótico conocido como el Dragón de Heighway de orden n. Por ejemplo, D10 se muestra a continuación; contando cada "F" como un paso, el punto resaltado en (18,16) es la posición alcanzada después de 500 pasos. </p><p> ¿Cuál es la posición del cursor después de 1012 pasos en D50? Da tu respuesta en la forma x, y sin espacios. </p></section>
|
|
|
|
## Instructions
|
|
<section id="instructions">
|
|
</section>
|
|
|
|
## Tests
|
|
<section id='tests'>
|
|
|
|
```yml
|
|
tests:
|
|
- text: '<code>euler220()</code> debe devolver 139776, 963904.'
|
|
testString: 'assert.strictEqual(euler220(), 139776, 963904, "<code>euler220()</code> should return 139776, 963904.");'
|
|
|
|
```
|
|
|
|
</section>
|
|
|
|
## Challenge Seed
|
|
<section id='challengeSeed'>
|
|
|
|
<div id='js-seed'>
|
|
|
|
```js
|
|
function euler220() {
|
|
// Good luck!
|
|
return true;
|
|
}
|
|
|
|
euler220();
|
|
|
|
```
|
|
|
|
</div>
|
|
|
|
|
|
|
|
</section>
|
|
|
|
## Solution
|
|
<section id='solution'>
|
|
|
|
```js
|
|
// solution required
|
|
```
|
|
</section>
|