この挑戦は、このアプリに触発されています。テストケースはそのアプリから借用しています。
これは、最短の時間で最大のテストケースを解決することを目的とする、最速のコードチャレンジです。アルゴリズムをより速くテストできるように、いくつかの小さなテストケースが用意されています。
もし寸法、正方形入力グリッドを与えられるだろうn行N 9 <= N <= 12。このグリッドはn個のエリアに分割され、各エリアのセルには一意の識別子があります(ここではテキストでalの小文字を使用しますが、整数1-12など、好きなものを選択できます) 。
入力は次のようになります(オプションの入力形式)。
aabbbbbcc
adddbbbcc
adeeecccc
adddefgcc
hhhdifggg
hdddifffg
hhhiifffg
hihiifffg
iiiiiiggg
または、視覚化が簡単です:
チャレンジ:
あなたは配置になっている2本の* nは、以下の規則に従って、この公園で木を:
- 正確がなければならない2列ごとに木々 、そして2行あたりの木
- すべてのエリアには正確に2本の木があります。
- 他のツリーに垂直、水平、斜めに隣接するツリーはありません
上記のレイアウトの解決策は次のとおりです。
注:各パズルには1つのソリューションしかありません
追加のルール:
- 入力および出力形式はオプションです
- 出力は、たとえば、インデックスのリスト、その位置にツリーがあるかどうかを示す1/0のグリッド、またはツリーが示されている入力の修正バージョンです。
- 実行時間は決定的でなければなりません
- プログラムは@isaacgのコンピューターで1分以内に終了する必要があります
- 仕様:4 CPU、i5-4300U CPU @ 1.9 GHz、7.5G RAM。
- プログラムが1分ごとに2つの最大のテストケースを解決できない場合、2番目に大きい時間(n = 11)がスコアになります。最大のケースを解決するソリューションに負けてしまいます。
テストケース:
これらのテストケースに合わせて提出物がカスタマイズされているようであれば、このリストを編集できます。
12行12列:
--- Input ---
aaaaabccccdd
aaaaabccccdd
aaaaabbbbddd
eeeafffgbghh
eeaafffgbghh
eefffffggghh
eeefijffghhh
iieiijjjjkhh
iiiiijjjjkhk
lljjjjjjjkkk
llllllkkkkkk
llllllkkkkkk
--- Solution ---
aaaaabcccCdD
aaaaaBcCccdd
aAaaabbbbdDd
eeeaffFgBghh
eeAaFffgbghh
eefffffGgGhh
EeefijffghhH
iiEiIjjjjkhh
IiiiijjjjkHk
lljJjJjjjkkk
lLllllkkKkkk
lllLllKkkkkk
11行11列:
--- Input ---
aaaaaaabbcc
adddabbbbcc
edddbbbbbbc
eddddbbbbbb
effffggghhh
effffgghhii
eefffjjhhii
eeeejjjhhii
eeejjjjkiii
jjjjjjkkiii
jjjjjkkkiii
--- Solution ---
aaAaaaabbCc
adddAbBbbcc
eDddbbbbbbC
eddDdBbbbbb
effffggGhHh
eFfffGghhii
eefFfjjhHii
EeeejjjhhiI
eeEjjjjKiii
JjjjJjkkiii
jjjjjkKkIii
10行10列
--- Input ---
aaaaabccdd
aeaabbbccd
aeaabfbgcd
eeeaafggcd
eeeaafghcd
eeeiifghcd
ieiiigghcd
iiijighhcd
jjjjighhcd
jjjggghhdd
--- Solution ---
aaAaabccdD
aeaaBbBccd
aEaabfbgcD
eeeaaFgGcd
eEeAafghcd
eeeiiFghCd
IeiIigghcd
iiijigHhCd
JjJjighhcd
jjjgGghHdd
9行9列
--- Input ---
aabbbbbcc
adddbbbcc
adeeecccc
adddefgcc
hhhdifggg
hdddifffg
hhhiifffg
hihiifffg
iiiiiiggg
--- Solution ---
aAbBbbbcc
adddbbBcC
adEeEcccc
AdddefgCc
hhhDiFggg
hDddifffG
hhhiIfFfg
HiHiifffg
iiiiiIgGg
--- Input ---
aaabbbccc
aaaabbccc
aaaddbcce
ffddddcce
ffffddeee
fgffdheee
fggfhhhee
iggggheee
iiigggggg
--- Solution ---
aaAbBbccc
AaaabbcCc
aaaDdBcce
fFddddcCe
fffFdDeee
fGffdheeE
fggfHhHee
IggggheeE
iiIgggGgg
There shall be exactly 2 trees per column, and 2 trees per row
ため、ブルートフォースはおそらく不可能です。