Files
freeCodeCamp/curriculum/challenges/japanese/10-coding-interview-prep/project-euler/problem-437-fibonacci-primitive-roots.md
2022-04-02 17:46:30 +09:00

1.7 KiB

id, title, challengeType, forumTopicId, dashedName
id title challengeType forumTopicId dashedName
5900f5241000cf542c510036 問題 437: フィボナッチ原始根 5 302108 problem-437-fibonacci-primitive-roots

--description--

n が 0 から 9 のとき、8^n mod 11 を求めると 1, 8, 9, 6, 4, 10, 3, 2, 5, 7 が得られます。

このように、1 から 10 までのすべての値が現れます。 したがって、 8 は 11 の原始根です。

しかし、話はここで終わりません。

よく見ると次のことが分かります。

$$\begin{align} & 1 + 8 = 9 \\ & 8 + 9 = 17 ≡ 6\bmod 11 \\ & 9 + 6 = 15 ≡ 4\bmod 11 \\ & 6 + 4 = 10 \\ & 4 + 10 = 14 ≡ 3\bmod 11 \\ & 10 + 3 = 13 ≡ 2\bmod 11 \\ & 3 + 2 = 5 \\ & 2 + 5 = 7 \\ & 5 + 7 = 12 ≡ 1\bmod 11. \end{align}$$

したがって、8 の累乗を 11 で除した余りは周期 10 で循環し、8^n + 8^{n + 1} ≡ 8^{n + 2} (\text{mod } 11) です。 8 は 11 のフィボナッチ原始根と呼ばれます。

すべての素数がフィボナッチ原始根を持つわけではありません。 1 つ以上のフィボナッチ原始根を持つ 10000 未満の素数は 323 個あり、それらの和は 1480491 です。

少なくとも 1 つのフィボナッチ原始根を持つ 100\\,000\\,000 未満の素数の和を求めなさい。

--hints--

fibonacciPrimitiveRoots()74204709657207 を返す必要があります。

assert.strictEqual(fibonacciPrimitiveRoots(), 74204709657207);

--seed--

--seed-contents--

function fibonacciPrimitiveRoots() {

  return true;
}

fibonacciPrimitiveRoots();

--solutions--

// solution required