問題タブ [maze]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
c++ - スタックを使用して迷路のソリューションを記録する
何らかの方法でスタックの連結リスト実装を使用して、迷路の解を生成する予定です。迷路は .txt ファイルから読み込まれ、オープン スペースの 0 と壁の 1 で構成されます。
<- 出口は一番下の行にあるはずですか? それで、それらの 3 つの 0 は?
私が使用しようとしているアルゴリズムは次のとおりです。
私が試みてきた方法は、配列インデックス内で実行される ++ 操作に依存していました。配列添字演算子 [ が ++ よりも優先されることを知らなかったので、回避策を再考する必要があります。そうする前に、この方法が最初から機能することを確認したいと思います。これまでの私のアルゴ コードを見て、フィードバックを提供してくれる人はいますか? (注: 何らかの種類の無限ループを回避するために取られたパスを追跡するために、いくつかのコードを追加する必要があります)
++ の前に [ を実行する際の問題:
どんな助けでも感謝します、ありがとう!
c++ - バックトラックされたパスを記録する迷路ソルバー
迷路ソルバープログラムを機能させましたが、出力される最終的なソリューションパスに、バックトラックされたスペース(壁にぶつかって向きを変えなければならなかった場所)が含まれているようです。次に例を示します。
以下の現在の実装でこれを防ぐにはどうすればよいですか?
簡単な修正または完全なリストラが必要ですか?
c++ - 3D迷路のアルゴリズム
3次元の迷路を生成するアルゴリズムはありますか?基本的に2D迷路と同じですが、Z深度軸をトラバースできますか?ただし、開始から終了までの考え方は同じです。バックトラックは引き続き使用できますか?
3D迷路を生成するには、どのアルゴリズムを使用する必要がありますか?
ここを参照してください。つまり、立方体の面を繰り返すだけでなく、立方体にも入ることができます。
java - 配列迷路の手がかりをチェックするJavaプログラム - 答えは常に1オフ
この迷路を配列に保持する必要があり、次のセルへの手がかりを保持する 2 桁の数字のセルをチェックします。宝物を含むセルは、独自の座標を保持するセルです。
私の場合、それは (5, 2) に保持されているため、セル 52 です。この場合、配列は 0 から始まるため、(4, 1) です。
私の問題は、私のプログラムが数字の 1 を読み取っていることです。最初の手がかりで、それは 34 につながります。これにより、セル (2, 3) に移動するはずです。代わりに (1, 2) に移動します。
-1のせいかと思ったのですが、人間の数を扱っているので、1を引く必要があり、1ではなく0が最初に対応します。
flash - As3制限された動きに加速度を追加するにはどうすればよいですか?
迷路ゲームでは、キャラクターの動きに加速を加えようとしています。キャラクターは壁を通り抜けてはいけないので、移動機能とヒットテストは同じ機能になります。
この関数のifステートメントにアクセラレーションを追加しようとしましたが、正しく機能しません。誰かが加速コードをどこに置くべきか、そしてなぜそこにあるのか教えてもらえますか?
これは私がそれが行われたと思った方法ですが、機能しません:
java - java:迷路のバックトラックを使用した幅優先探索
私は迷路の幅優先探索を実装しようとしています。これは私がこれまでにリンクリストを使用して持っているコードですが、幅優先探索であるかどうかはわかりません。これはそれを行うための適切な方法ですか?何か提案、コメントはありますか?
c++ - 再帰的バックトラッカー迷路生成アルゴリズム スタック ループ
アスキー迷路を作成するために作成したアルゴリズムに問題があります。コードは再帰バック トラッカーを使用しており、擬似コードは基本的に次のとおりです。
私が抱えている問題は、スタックに追加してからスタックをポップするというループでコードがスタックしていることです。Windows マシン用に変更する必要がある場合、コードは現在 19 行目で Linux 用の 1 つのシステム コマンドを使用しています。
language-agnostic - グリッド上に有向グラフをランダムに生成する
ポケモンのアイス スライディング パズルに似たパズル ゲームを作成する目的で、有向グラフをランダムに生成しようとしています。
これは基本的に、ランダムに生成できるようにしたいものです: http://bulbanews.bulbagarden.net/wiki/Crunching_the_numbers:_Graph_theory
x 次元と y 次元でグラフのサイズを制限できるようにする必要があります。リンクの例では、8x4 グリッドに制限されます。
私が直面している問題は、グラフをランダムに生成することではなく、ノードの反対側に何か (岩のようなもの) が必要なため、2D 空間で適切にマップできるグラフをランダムに生成することです。スライドを止めると視覚的に意味があります。これに伴う問題は、岩が他の 2 つのノード間のパスまたは別のノード自体にある可能性があり、グラフ全体が壊れてしまうことがあります。
私が知っている何人かの人々と問題について話し合った後、解決につながる可能性のあるいくつかの結論に達しました. グラフを作成するときに、障害物をグラフの一部としてグリッドに含めます。完全に塗りつぶされたグリッドから始めて、ランダムなパスを描画し、そのパスを機能させるブロックを削除するだけですが、問題は、追加の短いパスを誤って導入しないように、どのブロックを削除するかを考え出すことになります. また、動的計画法アルゴリズムが有益かもしれないと考えていましたが、動的計画法アルゴリズムをゼロから作成することに熟練した人は誰もいません。この問題が公式に何と呼ばれているかについてのアイデアや参照 (公式のグラフの問題である場合) が最も役立ちます。
algorithm - 迷路の中で動く実体を見つけるためのアルゴリズム
Aには、プレイヤーと彼を(単独で)見つけなければならないドローンによって制御される迷路とキャラクターがあります。誰かがこのようなことをするための(効率的な)AIアルゴリズムを知っていますか?PS私はいくつかのパスファインディングアルゴリズム(A *など)があることを知っていますが、私が知る限り、これらは「動かない」2つのノード間のパスを見つけるためにのみ機能します(これは私のキャラクターが静止している場合に機能しますが、明らかにそうではありません)。
java - グリッド (つまり、Matrix NxN) としてではなく、グラフとして、Java で迷路を生成します。
迷路を構築するプログラムを生成する必要があります。このゲームでは、最大 60 ~ 70 人のプレイヤーが参加します。問題は、グリッドを使いたくないということです。なぜなら、それはあまりにも多くのメモリを浪費し、この表現 (= グリッド) の複雑さはそれほど簡単ではないと思うからです。そこで、いくつか考えた結果、グラフを使用することにしました。
- それぞれ
Room
の迷路は、グラフの頂点を表します - 迷路のそれぞれ
Connector
は、グラフのエッジを表します
コネクタは次の場合があります。 1. 外部ドア 2. 外部の部屋 3. 外壁
私の質問は、(x、y)座標からグラフを作成するにはどうすればよいですか(実行時に、ユーザーが座標を挿入している間に迷路を作成したい)?私はこれまで Java (または他の言語) でグラフを操作したことがないので、その方法がよくわかりません。
説明していただけますか?
編集: ゲームには宝物があり、すべてのプレイヤーは少なくとも 1 つの宝物を取得する必要があります。* 各プレイヤーには、ゲーム内で独自のステップがあり (おそらく、次のプレイヤーを決定するのに役立つ優先キューのようなもの)、各プレイヤーは、移動中に迷路内を 1 ステップ移動できます。