1use seg_lib::{DynamicSegmentTree, ops::LCM};
2
3fn main() {
7 let range = -1_000..5_000;
9 let mut seg = DynamicSegmentTree::<LCM<i32>>::new(range.clone()).unwrap();
10 assert_eq!(seg.len(), range.len());
11 assert_eq!(seg.range_query(..), 1);
12
13 seg.point_update(0, 2 * 3 * 7);
15 seg.point_update(1_000, 3 * 7);
16 seg.point_update(2_000, 2 * 5);
17
18 assert_eq!(seg.point_query(0), 2 * 3 * 7);
20 assert_eq!(seg.range_query(..), 2 * 3 * 5 * 7);
21 assert_eq!(seg.range_query(..1_000), 2 * 3 * 7);
22}