コンピュータパズルチャレンジ#3を開催しました!

9月3日(日)にコンピュータパズルチャレンジ#3を開催しました。

コンピュータパズルチャレンジはコンピュータを使ってパズル問題を解く勉強会です。これまでアルゴリズムについての勉強会を開催されてきた森 正樹さんに毎回あらかじめパズル問題を用意していただき、各自ランダムに選択した問題を時間をかけて解いてみる、という趣旨で開催しています。

取り組んだ内容

出題された問題のひとつは「どろけい」でした。

「どろけい」は線でつながれたマスの間を泥棒と刑事が交互に動くとき、初期状態からどう泥棒が動いても最終的に必ず刑事が泥棒を捕まえる(泥棒と同じマスに移動する)ことができるような必勝法の最短手順を求める問題でした。

この問題は、プログラミング言語Clojureを使ってマス移動の手を幅優先探索することでうまく解を求めることができました。時間的に余裕があったため、マスとマスのつなぎかたを変えても解が求められるかにチャレンジしていました。

またその他にも、星型の魔法陣に数字を埋める問題や循環小数の循環節が最も長い数を求める問題などが出題され、それぞれGoやClojureなどのプログラミング言語で解答がされました。

それぞれの問題の解答は以下で公開されています:

コンピュータパズルチャレンジは来月以降も開催予定です。

普段、なかなか難解なアルゴリズムをじっくり考えるという機会のない方も、パズルにチャレンジして頭をリフレッシュさせてみるのはいかがでしょうか?興味のある方はぜひぜひご参加下さい!!

halake.connpass.com

コメント

このブログの人気の投稿

レイクタウンにある生産緑地

越谷レイクタウンに新たに民間キャンプ場がオープン

Phaser3 + Typescriptを使ってRPGゲームの基礎を作ろう!その2