この Numberphileエントリに触発された
バックグラウンド
整数nの立方体距離数は、ここで、与えられたxに対してx³距離離れた整数のセットとして定義されます。簡単な例では、とと、キューブの距離番号があります。n=100
x=2
{92,108}
これは、単にxを変更するだけで、より大きなセットに拡張できます。x ∈ {1,2,3,4}
同じとn=100
、我々は結果セットを持っています{36,73,92,99,101,108,127,164}
。
レッツは、定義CD(N、X)を、全ての整数の集合としてn ± z³
持ちますz ∈ {1,2,3,...,x}
。
これで、これらの立方体距離番号の特別なプロパティに注目できます。数値が持つことができる多くの特別なプロパティのうち、ここで興味のある2つのプロパティはprimalityとprime divisorsです。
上記の例CD(100,4)の場合、73, 101, 127
すべて素であることに注意してください。セットからこれらを削除すると、が残ります{36,92,99,108,164}
。これらの数のすべての素数は(順番に){2,2,3,3,2,2,23,3,3,11,2,2,3,3,3,2,2,41}
です。つまり、5つの異なる素数があり{2,3,23,11,41}
ます。そこでことを定義することができますCD(100,4)がありravenity 1のを5
。
ここでの課題は、特定の入力のラビニティを出力する関数またはプログラムを最小バイトで記述することです。
入力
- 任意の便利な形式の2つの正の整数、
n
およびx
。
出力
- CD(n、x)を使用して計算された場合、2つの入力数値のラベニティを記述する単一の整数。
ルール
- 入力/出力は、適切な方法で行うことができます。
- 標準的な抜け穴の制限が適用されます。
- 計算を簡単にするために、入力データは、CD(n、x)がセット内で正の数のみを持つ(つまり、CD(n、x)が負の数またはゼロを持つことはない)と想定できます。
- 関数またはプログラムは
n + x³
、言語のネイティブ整数データ型に適合するように入力番号を処理できる必要があります。たとえば、32ビットの符号付き整数型の場合、すべての入力数値n + x³ < 2147483648
が可能です。
例
n,x - output
2,1 - 0 (since CD(2,1)={1,3}, distinct prime divisors={}, ravenity=0)
5,1 - 2
100,4 - 5
720,6 - 11
脚注
1- セットの基本的な性質には興味がなく、異なる種類の鳥に興味があるため、そのように名付けられました。「一般的な」除数を扱っているため、一般的なravenを使用することにしました。
100,4
は、OPがバックグラウンドセクションで説明する例です。あなたの間違いは、すべてを考慮する必要があるということです1..x
ので[1,2,3,4]
、この場合。
100,4
5を生成しますか?そのセットの立方体距離の数値はであり、そのセット36,164
の素因数は2,3,41
(そのセットの因数は{2, 3, 4, 6, 9, 12, 18, 36}
および{2, 4, 41, 82, 164}
であるため)です。したがって、出力は3ではなく5であるべきである