定義
二次剰余
整数は、次のような整数xが存在する場合、法とする2次剰余と呼ばれます。
を法とする2次剰余のセットは、0 \ le x \ le \ lfloor n / 2 \ rfloorのx ^ 2 \ bmod nの結果を調べることで簡単に計算できます。
チャレンジシーケンス
我々は定義同じ値のオカレンスの最小数として全てのペアのためのモジュロ平方剰余の。
最初の30の用語は次のとおりです。
これはA316975(自分で提出)です。
例:
二次残基はモジュロである、、、、及び。
これらの2次剰余の各ペアについて、を計算します。これにより、次の表が得られます(が左、が上)。
上記の表の同じ値の最小出現回数は(、、および)。したがって、です。
あなたのタスク
次のいずれかです。
- 整数を取り、(0インデックス付きまたは1インデックス付き)を出力または返す
- 整数を取り、シーケンスの最初のの項を出力または返す
- 何も入力せずに、シーケンスを永久に出力します
- コードは、シーケンスの最初の50個の値を1分未満で処理できる必要があります。
- 十分な時間とメモリがあれば、コードは理論的には言語でサポートされている正の整数に対して機能する必要があります。
- これはcode-golfです。
+n
内部には(...)mod n
効果がありませんか?もしそうなら、それは定義の一部である非常に奇妙です。
(some_potentially_negative_value + n) mod n
。)結果のサインは言語に依存するので、プログラミングの挑戦でそれを持っている方が良いと思います。
a_p = round(p/4)
、すべての平方数の値を提供します。しかし、状況は素数の力では複雑に思え、3 mod 4と1 mod 4のケースは別々に処理する必要があります。