freeCodeCamp/curriculum/challenges/portuguese/08-coding-interview-prep/rosetta-code/zeckendorf-number-represent...

2.2 KiB
Raw Blame History

title id challengeType videoUrl localeTitle
Zeckendorf number representation 594810f028c0303b75339ad6 5 Assinale a representação do número da aldeia

Description

Assim como os números podem ser representados em uma notação posicional como somas de múltiplos dos poderes de dez (decimal) ou dois (binário); todos os inteiros positivos podem ser representados como a soma de um ou zero vezes os membros distintos da série de Fibonacci.

Lembre-se de que os primeiros seis números distintos de Fibonacci são: 1, 2, 3, 5, 8, 13 . O número decimal onze pode ser escrito como 0*13 + 1*8 + 0*5 + 1*3 + 0*2 + 0*1 ou 010100 na notação posicional, onde as colunas representam a multiplicação por um membro particular da sequência. Zeros à esquerda são descartados de modo que 11 decimal se torna 10100 .

10100 não é a única maneira de fazer 11 dos números de Fibonacci, no entanto 0*13 + 1*8 + 0*5 + 0*3 + 1*2 + 1*1 ou 010011 também representaria decimal 11. Para um número Zeckendorf verdadeiro existe a restrição adicional de que "não podem ser usados dois números consecutivos de Fibonacci", o que leva à antiga solução única.

Tarefa: Escreva uma função que gere e retorne uma matriz dos primeiros números do N Zeckendorf em ordem.

Instructions

Tests

tests:
  - text: zeckendorf deve ser função
    testString: 'assert.equal(typeof zeckendorf, "function", "zeckendorf must be function");'
  - text: Sua função <code>zeckendorf</code> deve retornar a resposta correta
    testString: 'assert.deepEqual(answer, solution20, "Your <code>zeckendorf</code> function should return the correct answer");'

Challenge Seed

function zeckendorf(n) {
  // good luck!
}

After Test

console.info('after the test');

Solution

// solution required