エグゼクティブサマリー:整数の入力シーケンスが「許容される」かどうかをテストします。これは、モジュラスのすべての剰余クラスをカバーしないことを意味します。
「許容される」シーケンスとは何ですか?
整数m≥2が与えられた場合、mを法とする剰余類は、共通の差mのmの算術級数になります。たとえば、m = 4の場合、4を法とする4つの剰余クラスは
..., -8, -4, 0, 4, 8, 12, ...
..., -7, -3, 1, 5, 9, 13, ...
..., -6, -2, 2, 6, 10, 14, ...
..., -5, -1, 3, 7, 11, 15, ...
k番目の剰余クラスは、mで除算したときの剰余がkに等しいすべての整数で構成されます。(負の整数に対して「剰余」を正しく定義している限り)
整数a1、a2、...、akのシーケンスは、剰余クラスの少なくとも1つと交差しない場合、mを法として許容されます。たとえば、{0、1、2、3}および{-4、5、14、23}は4を法とする許容値ではありませんが、{0、1、2、4}および{0、1、5、9 }および{0、1、2、-3} は 4を法として許容されます。また、{0、1、2、3、4}は4を法として許容されませんが、{0、1、2} は 4を法として許容されます。
最後に、整数のシーケンスは、すべての整数m≥2に対してモジュロmで許容される場合、単純に許容されます。
チャレンジ
入力として整数のシーケンスを受け取り、シーケンスが許容される場合は(一貫した)Truthy値を返し、シーケンスが許容されない場合は(一貫した)Falsy値を返すプログラムまたは関数を作成します。
整数の入力シーケンスは、任意の妥当な形式にすることができます。入力シーケンスに少なくとも2つの整数があると仮定できます。(必要に応じて入力整数が異なると仮定することもできますが、おそらく役に立ちません。)正および負の整数(および0)を処理できる必要があります。
通常のコードゴルフスコアリング:バイト単位の最短回答が勝ちます。
サンプル入力
次の入力シーケンスは、それぞれTruthy値を提供する必要があります。
0 2
-1 1
-100 -200
0 2 6
0 2 6 8
0 2 6 8 12
0 4 6 10 12
-60 0 60 120 180
0 2 6 8 12 26
11 13 17 19 23 29 31
-11 -13 -17 -19 -23 -29 -31
次の入力シーケンスはそれぞれ、Falsy値を提供する必要があります。
0 1
-1 4
-100 -201
0 2 4
0 2 6 10
0 2 6 8 14
7 11 13 17 19 23 29
-60 0 60 120 180 240 300
チップ
- 3以下の整数のシーケンスは4を法として自動的に許容されることに注意してください。より一般的には、m> kの場合、長さkのシーケンスはmを法として自動的に許容されます。許容性のテストでは、実際には有限数のmをチェックするだけで済みます。
- また、2は4を除算し、2を法とする許容可能なシーケンス(つまり、すべて偶数またはすべて奇数)は4を法として自動的に許容されることに注意してください。 nを法として自動的に許容されます。したがって、許容性を確認するには、必要に応じて素数mのみを考慮するだけで十分です。
- a1、a2、...、akが許容可能なシーケンスである場合、任意の整数c(正または負)に対してa1 + c、a2 + c、...、ak + cも許容されます。
数学的関連性(オプションの読み取り)
a1、a2、...、akを整数のシーケンスとします。n + a1、n + a2、...、n + akがすべて素数であるような整数nが無限にあるとします。それから、a1、a2、...、akが許容可能である必要があることを示すのは簡単です。実際、a1、a2、...、akは許容できないと仮定し、mを、a1、a2、...、akがmを法として許容できないような数とする。次に、どのnを選択しても、数値n + a1、n + a2、...、n + akのいずれかはmの倍数でなければならないため、素数にはなりません。
の プライムK-タプル予想は、まだ数論で大きく開いて問題となっているこの文の逆、である:それはA1、A2場合、...、AKは許容シーケンス(またはであることを主張するK-タプル)、そこn + a1、n + a2、...、n + akがすべて素数であるような無限に多くの整数nでなければなりません。たとえば、許容されるシーケンス0、2は、nとn + 2の両方が素数になるように無限に多くの整数nが存在する必要があるというステートメントを生成します。これは双子素数予想です(まだ証明されていません)。
-60 0 60 120 180 240 300
7を法とするすべての残基クラスと交差するため、許容されません。
[_60:0:60:120:180]
私に真実を与えています。確かに、すべてのm
from2
から5
包括的で少なくとも1つのクラスと交差しません。さらに、m
fromから2
to5
までのすべてで1つのクラスのみと交差します。