47 lines
		
	
	
		
			1.0 KiB
		
	
	
	
		
			Markdown
		
	
	
	
	
	
			
		
		
	
	
			47 lines
		
	
	
		
			1.0 KiB
		
	
	
	
		
			Markdown
		
	
	
	
	
	
| ---
 | |
| id: 5900f4951000cf542c50ffa8
 | |
| title: 'Problem 297: Zeckendorf Representation'
 | |
| challengeType: 5
 | |
| forumTopicId: 301949
 | |
| dashedName: problem-297-zeckendorf-representation
 | |
| ---
 | |
| 
 | |
| # --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.
 | |
| 
 | |
| # --hints--
 | |
| 
 | |
| `euler297()` should return 2252639041804718000.
 | |
| 
 | |
| ```js
 | |
| assert.strictEqual(euler297(), 2252639041804718000);
 | |
| ```
 | |
| 
 | |
| # --seed--
 | |
| 
 | |
| ## --seed-contents--
 | |
| 
 | |
| ```js
 | |
| function euler297() {
 | |
| 
 | |
|   return true;
 | |
| }
 | |
| 
 | |
| euler297();
 | |
| ```
 | |
| 
 | |
| # --solutions--
 | |
| 
 | |
| ```js
 | |
| // solution required
 | |
| ```
 |