パズルを解く人間の思考過程をプログラムで表すと…
あれ? あれ? あれあれあれあれあれ?
担当者がA5サイズの本に隠れてしまいましたよ。
杉山さんは、そのくらいミニサイズの編集者であります。
でも、小粒でもピリリと辛いのですよ。
『鉛筆パズルゲームプログラミング ナンバープレース・お絵かきパズル・ナンバークロスワードのアルゴリズム』
SBCr Shop / Amazon
棚床 弘樹 著
2007/06/27
税込価格 2,520円
カバーをご覧になれば、一目瞭然。
鉛筆パズルゲームとは、最近話題のナンバープレース(ナンプレ、数独、と書いてある本もありますね)をはじめ、お絵かきパズルやナンバークロスワードなどのこと。
えっと、これは鉛筆パズルゲームをプログラミングで作るための本、なのですか?
「ん~、厳密にはそうではないですね。。問題を解かせるプログラムを作る、んですね」
「え、問題を解かせるプログラム? 問題をコンピュータに解かせちゃうんですか? 電卓使ってテストの計算解くみたいなもん? それってズルじゃないんですか! いや、それができたら、パズル雑誌の懸賞に全部楽勝で応募できちゃいますね!?」
「え、えーと、そういうワケではなくてですね…」
返事に窮する杉山さん(かわいそう)。
つまり、「人がパズルゲームを解く思考過程をプログラミングしてみよう」、ということのようです。
かつて弊社の『C MAGAZINE』誌上で、さまざまなパズルや数式をプログラムで解く連載記事『Cマガ電脳クラブ』が人気だったことにヒントを得て、「昨今の脳トレブームで人気の鉛筆パズルゲームを、プログラマーの視点に立って考えたら面白いんじゃないか?」と、杉山さんは考えて、この企画を考えたそうですよ。なるほど。
普通、ゲームプログラミングの本というと、「ゲームを作るためのプログラミング」ですが、こういう切り口の本は日本で他に例をみない!(たぶん)(by 杉山さん)とのこと。
ソースコードが丁寧でわかりやすい。
更に問題を解くアルゴリズムを応用して、問題を作るプログラムも作成しています。
ところで皆さん、ナンバープレースって、全部で何パターンあるか、ご存知ですか?
答えは、24ページに。
9×9のマスに1~9の9通りの数字を置くパズルですから、組み合わせは9の(9×9)乗≒2.95×10の94乗。
実際の問題には、最初から数字が埋まっているマスが多いわけですが、それを差し引いても気の遠くなるような組み合わせのバリエーションが存在するのです。
飽きずにどんどんハマってしまう人が尽きないのも、納得。
パズル本が続々ヒットするワケですね♪
身長161.5cm、体重46kg、風が吹けば飛ばされちゃいかねない「小心者で小身者な」(本人談)編集者の杉山さん。“小さく生んで、大きく育てる”本作りで、日夜奮闘しています♪