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

#include <segtree.hpp>

Public Member Functions

 SegTree ()
 
 SegTree (int n)
 
 SegTree (const vector< T > &a)
 
void set (int p, T x)
 
get (int p)
 
query (int l, int r)
 
all_query ()
 
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

◆ SegTree() [1/3]

template<Monoid T>
maomao90::SegTree< T >::SegTree ( )
inline

◆ SegTree() [2/3]

template<Monoid T>
maomao90::SegTree< T >::SegTree ( int n)
inlineexplicit

◆ SegTree() [3/3]

template<Monoid T>
maomao90::SegTree< T >::SegTree ( const vector< T > & a)
inlineexplicit

Member Function Documentation

◆ set()

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

◆ get()

template<Monoid T>
T maomao90::SegTree< T >::get ( int p)
inline

◆ query()

template<Monoid T>
T maomao90::SegTree< T >::query ( int l,
int r )
inline

◆ all_query()

template<Monoid T>
T maomao90::SegTree< T >::all_query ( )
inline

◆ max_right() [1/2]

template<Monoid T>
template<bool(*)(T) pred>
int maomao90::SegTree< T >::max_right ( int l)
inline

◆ max_right() [2/2]

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

◆ min_left() [1/2]

template<Monoid T>
template<bool(*)(T) pred>
int maomao90::SegTree< T >::min_left ( int r)
inline

◆ min_left() [2/2]

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

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