pub struct SqrtDecomposition<G: Monoid> { /* private fields */ }Implementations§
Source§impl<G: Monoid> SqrtDecomposition<G>
impl<G: Monoid> SqrtDecomposition<G>
pub fn size(&self) -> usize
pub fn interval(&self) -> usize
pub fn new(g: G, size: usize) -> Self
pub fn set(&mut self, i: usize, x: G::T)
pub fn fold(&self, l: usize, r: usize) -> G::T
pub fn max_right<F>(&self, is_ok: F, l: usize) -> usize
pub fn min_left<F>(&self, is_ok: F, r: usize) -> usize
Trait Implementations§
Auto Trait Implementations§
impl<G> Freeze for SqrtDecomposition<G>where
G: Freeze,
impl<G> RefUnwindSafe for SqrtDecomposition<G>
impl<G> Send for SqrtDecomposition<G>
impl<G> Sync for SqrtDecomposition<G>
impl<G> Unpin for SqrtDecomposition<G>
impl<G> UnwindSafe for SqrtDecomposition<G>
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more