【まとめ】C#で迷路 プログラミング X Facebook はてブ Pocket LINE コピー 2021.01.102023.07.07 これまでに書いた記事の中から、「C#で迷路」というテーマで書いた記事をまとめてみました。 【C#】迷路を出力する通路を「0」、壁を「1」とした2次元配列で迷路を表現して、通路を「 」(半角スペース)、壁を「#」として1行ごとに改行して出力する。 using System; public class Maze { public const int PA 【C#】壁のない迷路を生成する迷路の幅と高さをそれぞれ width, height として設定し、その数値にしたがって壁のない迷路を生成する。※迷路の幅と高さは5以上の奇数とする。 using System; public class Maze { public con 【C#】迷路の外壁を設置する迷路の幅と高さをそれぞれ width, height として設定し、その数値にしたがって外壁を設置する。※迷路の幅と高さは5以上の奇数とする。 using System; public class Maze { public const i 【C#】迷路の内壁を等間隔に設置する迷路の幅と高さをそれぞれ width, height として設定し、その数値にしたがって上下左右1マス間隔で内壁を設置する。※迷路の幅と高さは5以上の奇数とする。 using System; public class Maze { publ 【C#】棒倒し法で迷路を生成する迷路の幅と高さをそれぞれ width, height として設定し、その数値にしたがって棒倒し法で迷路を生成する。※迷路の幅と高さは5以上の奇数とする。 using System; public class Maze { public co 【C#】穴掘り法で迷路を生成する迷路の幅と高さをそれぞれ width, height として設定し、その数値にしたがって穴掘り法で迷路を生成する。※迷路の幅と高さは5以上の奇数とする。 using System; using System.Collections.Gene 【C#】壁伸ばし法で迷路を生成する迷路の幅と高さをそれぞれ width, height として設定し、その数値にしたがって壁伸ばし法で迷路を生成する。※迷路の幅と高さは5以上の奇数とする。 using System; using System.Collections.Gen 【C#】迷路のスタートとゴールを設定する迷路のスタートとゴールを座標によって設定し、スタートを「S」、ゴールを「G」として出力する。 using System; public class Maze { public const int PATH = 0; public const 【C#】迷路の最短経路を出力するスタートからゴールまでの距離を2次元配列で表現して、最短経路の通路を「 」(半角スペース)から「*」に置き換えて出力する。 using System; public class Maze { public const int PATH = 【C#】幅優先探索で迷路の最短経路を求める探索していない通路を「-1」として表現してスタートからゴールに到達するまで幅優先探索で迷路を探索し、探索した通路はスタートからの距離に数値を置き換える。 using System; using System.Collections.Gene 【C#】深さ優先探索で迷路の最短経路を求める探索していない通路を「-1」として表現してスタートからゴールに到達するまで深さ優先探索で迷路を探索し、探索した通路はスタートからの距離に数値を置き換える。 using System; using System.Collections.Gen 【C#】迷路のスタートからの距離を出力するスタートからの距離と壁を距離の最大値の桁数に合わせて出力する。 using System; using System.Collections.Generic; using System.Linq; public class Maze { p