かめちゃんのブログ

おやつを食べながら気ままに読めるブログ

書籍「パズルで鍛えるアルゴリズム力」

2022年4月15日発売「パズルで鍛えるアルゴリズム力」(技術評論社、大槻 兼資 著)、電子書籍Kindle版をAmazonで購入しました。

これはパズルファン必読の書籍ですね。

今年2022年購入した本のNo.1です。(評価は星5つでは足りない)

本文中にパズルで参考になる論文やパズルサイトのURLが掲載されています。

紙書籍より、リンクをタップしてWEBブラウザで簡単に閲覧できる電子書籍版がオススメです。

本書では,「テンパズル」「数独」「4×4オセロ」といったさまざまなパズルのソルバーを実装することで,楽しく効率的にアルゴリズムの設計力が磨けます。各アルゴリズムの概要は,図解でしっかり解説。数学的解法といった発展的な内容も盛り込みました。

 

1.パズルの紹介、2.パズル解法のアルゴリズム解説、3.パズル解法のソルバープログラムの作成

3ステップでパズルの解法プログラムを解説しています。

プログラミング言語C++ですが、基本的な機能しか使っていないので、多言語への移植は容易だと思われます。

本書サポートページのC++ソースコードは、C4droidアプリ (Android用C /C++コンパイラIDE)で、エラーなくコンパイル&実行(Run)できました。

 

本書で作成するパズルのソルバー(ズル解法プログラム)

  • テンパズル (4つの数に四則演算を組み合わせて、10を作るパズル)
  • 小町算
  • 虫食算
  • 数独
  • 覆面算
  • 迷路
  • 15パズル
  • 4×4オセロ
  • 編集距離 (与えられた文字列を、ほかの文字列へと作り替える最短手順を問う文字列バズル)
  • ドミノタイリング (格子状の盤面に、ドミノ1×2の長方形を隙間なく敷き詰めるパズル)

 

パズルの紹介もマニアックで詳しいです。

  • テンパズルでは、「将棋の藤井聡太竜王(2022 年4月現在)も、子どものころ、10を作る遊びをよくしていたそうです。」というエピソードを紹介しています。
  • テンパズルの問題で、開成中学校の2004年の入試問題を紹介しています。
  • 4×4オセロの紹介で、様々なテーブルゲームの解析状況(先手必勝or後手必勝or引き分けor未解決)を紹介しています。4×4オセロの結果は解析されています。どうぶつしょうぎも紹介されています。
  • コラム「数独の最小ヒント数は17」では、ヒント数16では解けないという論文を紹介しています。
  • コラム パズルの巨匠紹介で、デュードニーとサムロイドの2大巨匠のプロフィールと代表作を紹介しています。
  • 編集距離パズルでは、実応用でバイオインフォマティクスやスペルチェッカーなどを紹介しています。

 

続編で、詰将棋ソルバーの解説を読んでみたいですね。

 

 

【リンク】

パズルで鍛えるアルゴリズム力:書籍案内|技術評論社 -
https://gihyo.jp/book/2022/978-4-297-12679-7

出版社 本書のページ