このジャンルでお願いします。
下の図で☆がスタートラインで■が移動できるエリアだとします。
15マス移動できるとして、ここでは例えば時計回りに移動するとします。
ただ単に進むだけなら、一歩移動するごとに15(その時の移動可能歩数)から
1ずつ引いていって0になったら動けないようにすれば良いのですが、
移動途中で、進んできた道を戻る場合に移動可能歩数を
回復してやらなければなりません。
どうやってこの道が通ってきた道かを判断すれば良いのでしょうか?
(x=1,y=1)
↓
□□□■□□□
□□□■□□□
□□■☆■■■
□□■□■□■
□□■■■■■
□□■□■□□
□□■■■□□
No.2ベストアンサー
- 回答日時:
スタックを使うのはどうでしょうか?
* 空のスタックを用意します
* 移動する際にスタックに積まれた中の最新の座標と移動先の座標を比較し同じならばスタックから取り除き、ちがければ移動元の座標をスタックに積みます。スタックが空の場合は移動元の座標をスタックに積みます。
* 2の操作を繰り返します。
スタックの大きさが移動した歩数になります。
No.1
- 回答日時:
たとえばスタートの x=4,y=3 から、
x=4,y=3
x=3,y=3
x=3,y=4
x=3,y=5
x=4,y=5
x=5,y=5
x=5,y=4
x=5,y=3
と移動したときに、次の移動先である
x=4,y=3
を通ってきた道とカウントしないで良いとするなら(どちらを考えているかわかりませんのでとりあえず)、
単純に、移動を行ったら移動前の位置をバッファに保存していき、これから移動する位置とバッファの最後とを比較して、バッファ内にあれば回復とかすればいいだけのような気がします。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- 電車・路線・地下鉄 新幹線を使用しない鉄道の旅を何と言いますか? 青春18きっぷを「使用する」「しない」場合それぞれで 4 2023/05/19 21:48
- 大学・短大 至急教えてください。アリゴリズムの問題です。 下の図3×9のマス目において、白いコマと黒いコマが3個 12 2022/07/07 18:05
- 戦争・テロ・デモ ウクライナ軍歩兵の移動手段について 7 2022/03/25 00:16
- その他(暮らし・生活・行事) 夫が単身赴任中に配偶者の他県への就職についてです。 1 2022/05/08 17:23
- 地図・道路 富山県 通って 岡山まで行きます。 舞鶴若狭自動車道 ・ 名神高速道路 について 2 2023/07/04 10:40
- 電車・路線・地下鉄 2017年夏に完成予定だった東京駅「地下南口待合広場(仮称)」とは「動輪の広場」のことですか? 1 2022/04/11 10:20
- 物理学 特殊相対性理論を、完全否定に成功~ガンマの数式は、成立しない。 2 2023/03/08 19:30
- デスクトップパソコン パソコンが重くなった 34 2022/06/14 19:41
- 物理学 光速度に近い速度で移動しても、時間や時計の動きが遅くなる?等は、あり得ない。 3 2022/09/24 00:47
- 数学 パズルWaterSortの解は必ず存在するの? 5 2022/10/13 06:50
関連するカテゴリからQ&Aを探す
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
再帰関数を使うとき、ソフトウ...
-
スタックフレームの消滅
-
VB.netでDLLを読み込んで実行す...
-
エラー?メッセージ
-
スタック領域変更
-
printf / sprintf のスタック消...
-
C# スタックに格納する要素が...
-
基本情報技術者のデータ構造あ...
-
C言語 経路探索 経路リスト...
-
ゆゆにゃ。
-
情報処理の問題で理解ができま...
-
関数呼び出しについて質問です
-
C言語のリスト、スタック、キュ...
-
プログラムの規模を表す単位「k...
-
ubuntuで デイスク/deb/loopと...
-
パソコンでインターネット接続...
-
「ByRef引数の型が一致しません...
-
ページ置き換え LRU方式
-
[ASP]If~Else If~End If 対 Case
-
hdmiはパラレル?シリアル?
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
VB.netでDLLを読み込んで実行す...
-
最大スタックサイズを大きくす...
-
printf / sprintf のスタック消...
-
エラー?メッセージ
-
スタックフレームの消滅
-
_CRTIMPの意味は?
-
関数のプロローグとエピローグ...
-
逆ポーランド記法
-
マス目上の移動のアルゴリズム
-
C言語・スタックを使用した逆...
-
CASLとCASL2の違いについて
-
スタック領域変更
-
Cプログラミングの関数電卓のア...
-
スタック C言語
-
再帰処理を非再帰処理に書き換...
-
gccでスタックサイズを変更する...
-
スタックを用いて整数配列を入...
-
スタックの仕組み
-
スタックの伸張方向
-
H8マイコン スタック領域に...
おすすめ情報