以下のためにNによってN画像、全く分離距離が複数回存在しないように、ピクセルのセットを見つけます。つまり、2つのピクセルが距離dで区切られている場合、それらは正確にdで区切られている唯一の2つのピクセルです(ユークリッド距離を使用)。dは整数である必要はないことに注意してください。
課題は、他の誰よりも大きなセットを見つけることです。
仕様
入力は必要ありません-このコンテストのNは619に修正されます。
(人々は尋ね続けているので、番号619について特別なことは何もありません。最適な解決策を考えにくいほど大きく、Stack Exchangeが自動的に縮小することなくN x Nの画像を表示できるほど小さいように選択されました。最大630 x 630のフルサイズを表示し、それを超えない最大の素数で行くことにしました。)
出力は、スペースで区切られた整数のリストです。
出力の各整数は、ピクセルの1つを表し、0から英語の読み取り順序で番号が付けられます。たとえば、N = 3の場合、位置は次の順序で番号が付けられます。
0 1 2
3 4 5
6 7 8
必要に応じて、実行中に進行状況情報を出力できますが、最終的なスコアリング出力が簡単に入手できる限りです。STDOUTまたはファイル、または下のStack Snippet Judgeに貼り付けるのに最も簡単なものに出力できます。
例
N = 3
選択した座標:
(0,0)
(1,0)
(2,1)
出力:
0 1 5
勝ち
スコアは、出力内の場所の数です。最も高いスコアを持つ有効な回答のうち、そのスコアで最も早く投稿を出力します。
コードは確定的である必要はありません。最高の出力を投稿できます。
研究の関連分野
(ゴロムのリンクについてはAbulafiaに感謝します)
これらはどちらもこの問題と同じではありませんが、どちらも概念が似ており、これにアプローチする方法についてのアイデアを提供します。
この質問に必要なポイントは、ゴロム長方形と同じ要件の対象ではないことに注意してください。ゴロム長方形は、各点から互いへのベクトルが一意であることを要求することにより、1次元のケースから拡張されます。これは、水平方向に2の距離で分離された2つのポイントと、垂直方向に2の距離で分離された2つのポイントが存在できることを意味します。
この質問の場合、一意でなければならないのはスカラー距離です。したがって、水平と垂直の2の分離はありません。この質問に対するすべての解はゴロム長方形になりますが、すべてのゴロム長方形がこの質問。
上限
Dennisはチャットで487がスコアの上限であることを有益に指摘し、証拠を示しました。
私のCJamコード(
619,2m*{2f#:+}%_&,
)によれば、0〜618 (両方を含む)の2つの整数の2乗の合計として記述できる118800個の一意の番号があります。nピクセルには、互いにn(n-1)/ 2個の一意の距離が必要です。n = 488の場合、118828になります。
そのため、画像内のすべての潜在的なピクセル間に118,800の異なる長さがあり、488個の黒ピクセルを配置すると118,828の長さになり、すべてを一意にすることができなくなります。
誰かがこれより低い上限の証拠を持っているかどうか聞いて非常に興味があります。
リーダーボード
(各ユーザーによるベストアンサー)