pub fn grid_to_graph<T: Clone>(
h: usize,
w: usize,
dirs: &[Dir],
index: impl Fn(Position) -> usize,
edge: impl Fn(Position, Position) -> Option<T>,
) -> Graph<Directed, Edge<T, ()>>
Expand description
グリッドをグラフに変換する
index
はグリッド上の位置をグラフの頂点番号に対応させる関数。
edge
はグリッド上のマス目からマス目への辺を与える関数。
通行不可の場合はNone
を返し、通行可能ならば、そのコストをSome
に包んで返すこと。