freeCodeCamp/curriculum/challenges/english/08-coding-interview-prep/project-euler/problem-297-zeckendorf-repr...

68 lines
1.3 KiB
Markdown
Raw Normal View History

---
id: 5900f4951000cf542c50ffa8
challengeType: 5
title: 'Problem 297: Zeckendorf Representation'
forumTopicId: 301949
---
## Description
<section id='description'>
Each new term in the Fibonacci sequence is generated by adding the previous two terms.
Starting with 1 and 2, the first 10 terms will be: 1, 2, 3, 5, 8, 13, 21, 34, 55, 89.
Every positive integer can be uniquely written as a sum of nonconsecutive terms of the Fibonacci sequence. For example, 100 = 3 + 8 + 89.
Such a sum is called the Zeckendorf representation of the number.
For any integer n>0, let z(n) be the number of terms in the Zeckendorf representation of n.
Thus, z(5)=1, z(14)=2, z(100)=3 etc.
Also, for 0<n<106, z(n)=7894453.
Find ∑z(n) for 0<n<1017.
</section>
## Instructions
<section id='instructions'>
</section>
## Tests
<section id='tests'>
```yml
tests:
- text: <code>euler297()</code> should return 2252639041804718000.
testString: assert.strictEqual(euler297(), 2252639041804718000);
```
</section>
## Challenge Seed
<section id='challengeSeed'>
<div id='js-seed'>
```js
function euler297() {
// Good luck!
return true;
}
euler297();
```
</div>
</section>
## Solution
<section id='solution'>
```js
// solution required
```
</section>