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

56 lines
1.8 KiB
Markdown
Raw Normal View History

---
id: 5900f4481000cf542c50ff5b
challengeType: 5
title: 'Problem 220: Heighway Dragon'
videoUrl: ''
localeTitle: 'Problema 220: Dragão Heighway'
---
## Description
<section id="description"> Seja D0 a string de duas letras &quot;Fa&quot;. Para n≥1, deduza Dn de Dn-1 pelas regras de reescrita de string: <p> &quot;a&quot;&quot;aRbFR&quot; &quot;b&quot;&quot;LFaLb&quot; </p><p> Assim, D0 = &quot;Fa&quot;, D1 = &quot;FaRbFR&quot;, D2 = &quot;FaRbFRRLFaLbFR&quot;, e assim por diante. </p><p> Estas strings podem ser interpretadas como instruções para um programa de computação gráfica, com &quot;F&quot; significando &quot;desenhar para frente uma unidade&quot;, &quot;L&quot; significando &quot;virar à esquerda 90 graus&quot;, &quot;R&quot; significando &quot;virar à direita 90 graus&quot; e &quot;a &quot;e&quot; b &quot;sendo ignorado. A posição inicial do cursor do computador é (0,0), apontando para cima (0,1). </p><p> Então Dn é um desenho exótico conhecido como o Dragão de Heighway da ordem n. Por exemplo, D10 é mostrado abaixo; contando cada &quot;F&quot; como um passo, o ponto destacado em (18,16) é a posição alcançada após 500 passos. </p><p> Qual é a posição do cursor após 1012 etapas no D50? Dê sua resposta no formato x, y sem espaços. </p></section>
## Instructions
<section id="instructions">
</section>
## Tests
<section id='tests'>
```yml
tests:
- text: '<code>euler220()</code> deve retornar 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>