大学の授業で水差し問題をプログラムで解くという話が出てきたので、Scalaの勉強がてら書いてみました。 まずはメインクラス // Main.scala object Main { def main(args: Array[String]): Unit = { // WaterClassに、ゴールの状態と探索の種類("wide" or "deep")を引数で与えて初期化 val water = new WaterClass((2, 0), "wide") // 探索開始 water.search_start water.load_of_goal println("Goal!!") } } 次に、水差し問題を解く本体のWater.scala。 // Water.scala import scala.collection.mutable.HashMap // HashMapを使用するのに必要 c