ライツアウト & 8めくりパズル

2000.09.21 updated


話の発端は、高橋謙一郎さんのHP(掲示板)で「ライツアウトの解を一発で求める式が存在する(細江氏の発見)」という報告です。類似の問題である 8めくりパズル をライツアウトと同様な方法で解いていた私には大変興味深い話でした。

以下の話は、高橋謙一郎さんのHPの中の「驚異のライツアウト解法ロジック」で丁寧に説明されています。

(1) ライツアウトの解を一発で求める式が存在する
(2) ライツアウトには「ある複数の押下ボタンを押すと何も押さないのと同じと
いうパターン」が存在する(仮に、0解と呼ぶ)
(3) 一般的なNxNのライツアウトの解の計算式を求めるアルゴリズムの判明
(4) (3)の結果、一般のライツアウトは、以下のケースがある
どのような問題でも解が常に1つ存在する(N=3場合)
あるパターンでは解が存在しないこともある。このとき、解が存在
するパターンでは、複数の解が存在する(N=5の場合)
(5) 複数解が存在するライツアウトの場合、与えられた問題に対して解が存在
するかどうかを判別する「解の存在条件式」がある
(6) 0解のパターンと解の存在条件式のパターンが何故か一致している
(7) カラー版ライツアウトの解法 2000.07.24



ここでは、以下の点について触れることにします。

0解のパターンと解の存在条件式のパターンの関係
8めくりパズルへの適用結果(turnoverver3の結果)
カラー版ライツアウトの解法(補足) 2000.09.21
ライツアウトの最長手数(「0解」から求める方法) 2000.09.21
カラー版ライツアウトの最長手数(「0解」から求める方法) 準備中
カラー版ライツアウトの最長手数の探索 2000.09.21

TurnOver Ver3のリソースを以下に公開します。

□ ソース& 実行ファイル

ソース本体: unit1.cpp(9KB)
ヘッダファイル:unit1.h(2KB)

説明書:readme.txt(2KB)
実行ファイル:turnover3.exe(258KB)
サンプルログ:log.txt(6KB)


カラー版ライツアウトの最長手数を探索するプログラムのリソースを以下に公開します。

□ソース


ソース本体: LO4unit1.cpp(7KB)
ヘッダファイル:LO4unit1.h(2KB)

実行結果ログ:LO4log.txt(5KB)


Home
Up
Back
Next