--- id: 5900f4fc1000cf542c51000e title: 'Problema 399: Números de Fibonacci livres de quadrados' challengeType: 5 forumTopicId: 302064 dashedName: problem-399-squarefree-fibonacci-numbers --- # --description-- Os primeiros 15 números de Fibonacci são: $$1,1,2,3,5,8,13,21,34,55,89,144,233,377,610.$$ É possível ver que 8 e 144 não são livres de quadrados: 8 é divisível por 4 e 144 é divisível por 4 e por 9. Assim, os 13 primeiros números de Fibonacci livres de quadrados são: $$1,1,2,3,5,13,21,34,55,89,233,377 \text{ e } 610.$$ O $200$º número de Fibonacci livre de quadrados é: 971183874599339129547649988289594072811608739584170445. Os últimos dezesseis algarismos deste número são: 1608739584170445 e, em notação científica, este número pode ser escrito como `9.7e53`. Encontre o $100.000.000$º número de Fibonacci livre de quadrados. Dê sua resposta como uma string com os últimos dezesseis algarismos seguidos de uma vírgula e de um número em notação científica (arredondado para uma casa depois da vírgula). Para o $200$º número livre de quadrados, a resposta seria: `1608739584170445,9.7e53` **Observação:** para este problema, assumiremos que, para cada número primo $p$, o primeiro número de Fibonacci divisível por $p$ não é divisível por $p^2$ (isso é parte da conjectura de Wall). Isso já foi verificado para números primos $≤ 3 \times {10}^{15}$, mas ainda não foi comprovado em geral. Se acontecer de a conjetura ser falsa, então a resposta aceita para este problema não é garantida para o $100.000.000$º número de Fibonacci livre de quadrados. Ao invés disso, representa apenas um limite menor para esse número. # --hints-- `squarefreeFibonacciNumbers()` deve retornar uma string. ```js assert(typeof squarefreeFibonacciNumbers() === 'string'); ``` `squarefreeFibonacciNumbers()` deve retornar a string `1508395636674243,6.5e27330467`. ```js assert.strictEqual(squarefreeFibonacciNumbers(), '1508395636674243,6.5e27330467'); ``` # --seed-- ## --seed-contents-- ```js function squarefreeFibonacciNumbers() { return true; } squarefreeFibonacciNumbers(); ``` # --solutions-- ```js // solution required ```