56 lines
2.9 KiB
Markdown
56 lines
2.9 KiB
Markdown
|
---
|
|||
|
id: 5900f3ac1000cf542c50febf
|
|||
|
challengeType: 5
|
|||
|
title: 'Problem 64: Odd period square roots'
|
|||
|
videoUrl: ''
|
|||
|
localeTitle: 'Задача 64: квадратные корни четного периода'
|
|||
|
---
|
|||
|
|
|||
|
## Description
|
|||
|
<section id="description"> Все квадратные корни периодичны, когда записываются как непрерывные дроби и могут быть записаны в виде: <p> √N = a0 + 1 </p><p> a1 + 1 </p><p> a2 + 1 </p><p> a3 + ... </p><p> Например, рассмотрим √23: </p><p> √23 = 4 + √23 - 4 = 4 + 1 = 4 + 1 </p><p> 1√23-4 </p><p> 1 + √23 - 37 </p><p> Если продолжить, мы получим следующее расширение: </p><p> √23 = 4 + 1 </p><p> 1 + 1 </p><p> 3 + 1 </p><p> 1 + 1 </p><p> 8 + ... </p><p> Процесс можно резюмировать следующим образом: </p><p> a0 = 4, </p><p> 1√23-4 = √23 + 47 = 1 + √23-37 a1 = 1, </p><p> 7√23-3 = 7 (√23 + 3) 14 = 3 + √23-32 a2 = 3, </p><p> 2√23-3 = 2 (√23 + 3) 14 = 1 + √23-47 a3 = 1, </p><p> 7√23-4 = 7 (√23 + 4) 7 = 8 + √23-4 a4 = 8, </p><p> 1√23-4 = √23 + 47 = 1 + √23-37 a5 = 1, </p><p> 7√23-3 = 7 (√23 + 3) 14 = 3 + √23-32 a6 = 3, </p><p> 2√23-3 = 2 (√23 + 3) 14 = 1 + √23-47 a7 = 1, </p><p> 7√23-4 = 7 (√23 + 4) 7 = 8 + √23-4 </p><p> Можно видеть, что последовательность повторяется. Для краткости мы используем обозначение √23 = [4; (1,3,1,8)], чтобы указать, что блок (1,3,1,8) повторяется бесконечно. </p><p> Первые десять непрерывных дробных представлений (иррациональных) квадратных корней: √2 = [1; (2)], период = 1 √3 = [1; (1,2)], период = 2 √5 = [2; (4)], период = 1 √6 = [2; (2,4)], период = 2 √7 = [2; (1,1,1,4)], период = 4 √8 = [2; (1,4)], период = 2 √10 = [3; (6)], период = 1 √11 = [3; (3,6)], период = 2 √12 = [3; (2,6 )], период = 2 √13 = [3; (1,1,1,1,6)], period = 5 Точно четыре непрерывные дроби при N ≤ 13 имеют нечетный период. Сколько длинных фракций для N ≤ 10000 имеет нечетный период? </p></section>
|
|||
|
|
|||
|
## Instructions
|
|||
|
<section id="instructions">
|
|||
|
</section>
|
|||
|
|
|||
|
## Tests
|
|||
|
<section id='tests'>
|
|||
|
|
|||
|
```yml
|
|||
|
tests:
|
|||
|
- text: ''
|
|||
|
testString: 'assert.strictEqual(euler64(), 1322, "<code>euler64()</code> should return 1322.");'
|
|||
|
|
|||
|
```
|
|||
|
|
|||
|
</section>
|
|||
|
|
|||
|
## Challenge Seed
|
|||
|
<section id='challengeSeed'>
|
|||
|
|
|||
|
<div id='js-seed'>
|
|||
|
|
|||
|
```js
|
|||
|
function euler64() {
|
|||
|
// Good luck!
|
|||
|
return true;
|
|||
|
}
|
|||
|
|
|||
|
euler64();
|
|||
|
|
|||
|
```
|
|||
|
|
|||
|
</div>
|
|||
|
|
|||
|
|
|||
|
|
|||
|
</section>
|
|||
|
|
|||
|
## Solution
|
|||
|
<section id='solution'>
|
|||
|
|
|||
|
```js
|
|||
|
// solution required
|
|||
|
```
|
|||
|
</section>
|