プライムスクエアとは何ですか?
プライムスクエアは、4つのエッジすべてが異なる素数であるスクエアです。
しかし、どれですか?
そして、それらをどのように構築しますか?
4x4プライムスクエアの例を次に示します
1009
0 0
3 0
1021
まず、左上隅から始めます。時計回りに作業しています。1009の数字を
持つ最小の素数を選択します。 4
次に4
、で始まる数字を持つ最小の素数が必要9
です。これは9001です
3番目(4桁)の素数は1
、最後の桁(9001がで終わるため1
)
である必要があり、かつエッジとして以前に使用されていないこのプロパティを持つ最小の4桁の素数である必要があります。
この素数は1021です
第四の素数が持っている必要があり4
、数字を開始すると1
(なぜなら1009ので始まる1
)と端と1
(なぜなら1021ので始まる1
)
このプロパティを持つ最小の4桁の素数エッジは以前のように使用されていないです1031
あなたのタスク
あなたは、整数与えられますn
から3 to 100
の寸法になります。この番号をn x n
四角
次に必要があり、正確に次のテストケースの形式で出力この広場
テストケース
n=3
Output
101
3 0
113
n=5
Output
10007
0 0
0 0
9 0
10061
n=7
Output
1000003
0 0
0 0
0 0
0 0
8 1
1000037
n=10
Output
1000000007
0 0
0 0
0 0
0 0
0 0
0 0
1 0
8 0
1000000021
n=20
Output
10000000000000000051
0 0
0 0
0 0
0 0
0 0
0 0
0 0
0 0
0 0
0 0
0 0
0 0
0 0
0 0
0 0
0 0
0 0
9 8
10000000000000000097
- 入力と出力は、任意の便利な方法で指定できます。
- STDOUTに出力するか、関数の結果として返すことができます。
- 完全なプログラムまたは機能のいずれかが受け入れられます。
- 数字が適切に並んでいる限り、任意の量の無関係な空白を使用できます
- 標準的な抜け穴は禁止されています。
- これはコードゴルフなので、通常のゴルフルールがすべて適用され、最短のコード(バイト単位)が勝ちます。
編集
これはすべての人に可能n
ですn=100
1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000289
9000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000091
1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000711
1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002191
そして、これが可能だとは思わないあなたのために、ここにはすべてのテストケースがあります
n
:P でこれが可能であることを証明できますか?チャレンジの問題ではなく、好奇心だけです。
n
に対して不可能です:n
= 1の場合、4つのエッジが異なる素数であるという制約を満たすことができませんが、n
= 2の場合、11,13,23を選択するように強制され、その時点で最終エッジ12コンポジットです。n
2を超えるすべての可能性があるという証拠はありませんが、そうでなければ学習することにショックを受けます。非公式には、桁数が多いほど、制約を満たすための「小刻みの部屋」が増えます。