maomao90's Library
A C++20 library for competitive programming.
Loading...
Searching...
No Matches
maomao90::LazySegTree< T, L > Struct Template Reference

#include <lazy_segtree.hpp>

Public Member Functions

 LazySegTree ()
 
 LazySegTree (int n)
 
 LazySegTree (const vector< T > &a)
 
void set (int p, T x)
 
get (int p)
 
query (int l, int r)
 
all_query ()
 
void update (int p, L f)
 
void update (int l, int r, L f)
 
template<bool(*)(T) pred>
int max_right (int l)
 
template<class P>
int max_right (int l, P pred)
 
template<bool(*)(T) pred>
int min_left (int r)
 
template<class P>
int min_left (int r, P pred)
 

Constructor & Destructor Documentation

◆ LazySegTree() [1/3]

template<Monoid T, Lazy< T > L>
maomao90::LazySegTree< T, L >::LazySegTree ( )
inline

◆ LazySegTree() [2/3]

template<Monoid T, Lazy< T > L>
maomao90::LazySegTree< T, L >::LazySegTree ( int n)
inlineexplicit

◆ LazySegTree() [3/3]

template<Monoid T, Lazy< T > L>
maomao90::LazySegTree< T, L >::LazySegTree ( const vector< T > & a)
inlineexplicit

Member Function Documentation

◆ set()

template<Monoid T, Lazy< T > L>
void maomao90::LazySegTree< T, L >::set ( int p,
T x )
inline

◆ get()

template<Monoid T, Lazy< T > L>
T maomao90::LazySegTree< T, L >::get ( int p)
inline

◆ query()

template<Monoid T, Lazy< T > L>
T maomao90::LazySegTree< T, L >::query ( int l,
int r )
inline

◆ all_query()

template<Monoid T, Lazy< T > L>
T maomao90::LazySegTree< T, L >::all_query ( )
inline

◆ update() [1/2]

template<Monoid T, Lazy< T > L>
void maomao90::LazySegTree< T, L >::update ( int p,
L f )
inline

◆ update() [2/2]

template<Monoid T, Lazy< T > L>
void maomao90::LazySegTree< T, L >::update ( int l,
int r,
L f )
inline

◆ max_right() [1/2]

template<Monoid T, Lazy< T > L>
template<bool(*)(T) pred>
int maomao90::LazySegTree< T, L >::max_right ( int l)
inline

◆ max_right() [2/2]

template<Monoid T, Lazy< T > L>
template<class P>
int maomao90::LazySegTree< T, L >::max_right ( int l,
P pred )
inline

◆ min_left() [1/2]

template<Monoid T, Lazy< T > L>
template<bool(*)(T) pred>
int maomao90::LazySegTree< T, L >::min_left ( int r)
inline

◆ min_left() [2/2]

template<Monoid T, Lazy< T > L>
template<class P>
int maomao90::LazySegTree< T, L >::min_left ( int r,
P pred )
inline

The documentation for this struct was generated from the following file: