[][src]Module sfcpl::structure::segment_tree

Varified

Usage

monoid_def!(Mm, std::i32::MAX, |x, y| { min(x, y) }); monoid_def!(Max, std::usize::MIN, |x, y| { max(x, y) }); #test fn debug() { let mut s = SegmentTree::::new(&[1usize, 2, 3, 2, 1, 3, 1]); dbg!(&s); s.update(7, 100); dbg!(&s); } #test fn get() { let s = SegmentTree::::new(&[1usize, 2, 3, 2, 1, 3, 1]); dbg!(&s); assert_eq!(s.range(0, 2).0, 2); assert_eq!(s.range(3, 6).0, 3); assert_eq!(s.range(0, 8).0, 3); }

Structs

SegmentTree