質問: すみません、学生で最近C言語、C++を習い始めたんですけど、ゲーム制作で道の上をプレイヤーが自動で動くようにしたいですけど、どーすればよろしいでしょうか? 説明下手ですみません。 00001000 00001000 11111000 1になっている場所を自動で進ませたい。
回答: 1で表される位置が通れる任意のマップで、スタート位置とゴール位置が指定されていて、スタートからゴールへ向かうルートを一つ求める、という問題だと解釈して回答しますが、ダイクストラ法を学んでみることをおすすめします。 ダイクストラ法は最短経路問題と呼ばれる問題の解法の一つです。問題の前提条件によってはもっと効率のいいアルゴリズムがあったり、最短経路を求めるアルゴリズムなので最短とは限らない任意の経路を求めるとかだと別の方法が必要になりますが、いずれにせよダイクストラ法が経路問題の基礎であることは確かです。