freeCodeCamp/curriculum/challenges/spanish/08-coding-interview-prep/project-euler/problem-220-heighway-dragon...

1.9 KiB

id challengeType title videoUrl localeTitle
5900f4481000cf542c50ff5b 5 Problem 220: Heighway Dragon Problema 220: Heighway Dragon

Description

Sea D0 la cadena de dos letras "Fa". Para n≥1, derive Dn de Dn-1 mediante las reglas de reescritura de cadenas:

"a" → "aRbFR" "b" → "LFaLb"

Por lo tanto, D0 = "Fa", D1 = "FaRbFR", D2 = "FaRbFRRLFaLbFR", y así sucesivamente.

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).

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.

¿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.

Instructions

Tests

tests:
  - text: '<code>euler220()</code> debe devolver 139776, 963904.'
    testString: 'assert.strictEqual(euler220(), 139776, 963904, "<code>euler220()</code> should return 139776, 963904.");'

Challenge Seed

function euler220() {
  // Good luck!
  return true;
}

euler220();

Solution

// solution required