Edge

Trait Edge 

Source
pub trait Edge<T> {
    // Required methods
    fn from(&self) -> usize;
    fn to(&self) -> usize;
    fn dist(&self, d: T) -> T;
}
Expand description

グラフの辺を表すトレイトです。

Required Methods§

Source

fn from(&self) -> usize

Source

fn to(&self) -> usize

Source

fn dist(&self, d: T) -> T

始点から from までの距離 d を受け取り、この辺を辿って to へ行く最短距離を求めます。dijkstra が正しく動くように、この関数は次の条件を満たように実装してください。参考情報

  • dist(d)d 以上である
  • dist(d)d について (広義) 単調増加である

使用例は ABC192E をどうぞ。

Implementors§

Source§

impl<T> Edge<T> for ConstEdge<T>
where T: Copy + Add<Output = T>,