dsalgo 0.3.7

A package for Datastructures and Algorithms.
Documentation
use crate::{
    commutative_property::CommutativeProperty,
    disjoint_sparse_table::DisjointSparseTable,
    range_get_query::RangeGetQuery,
    semigroup::Semigroup,
};

impl<G, I> RangeGetQuery<G::S, I> for DisjointSparseTable<G, I>
where
    G: Semigroup<I> + CommutativeProperty<I>,
    G::S: Clone,
{
    fn get_range(&mut self, l: usize, r: usize) -> G::S { self.reduce(l, r) }
}